这是自用的评论回复邮件通知代码,源码来自 Willin、Qiqiboy,有兴趣者可以去这两位作者博客看看。
这版本的评论回复通知是支持嵌套和@用户方式的。
用法很简单,把下面的代码扔到主题的 functions.php 里面即可(原则上要打开 WordPress 原生嵌套,具体木有去研究。)
* 代码放到 <?php ?> 内
/* 邮件通知 by Qiqiboy */ function comment_mail_notify($comment_id) { $comment = get_comment($comment_id);//根据id获取这条评论相关数据 $content=$comment->comment_content; //对评论内容进行匹配 $match_count=preg_match_all('/<a href="#comment-([0-9]+)?" rel="nofollow">/si',$content,$matchs); if($match_count>0){//如果匹配到了 foreach($matchs[1] as $parent_id){//对每个子匹配都进行邮件发送操作 SimPaled_send_email($parent_id,$comment); } }elseif($comment->comment_parent!='0'){//以防万一,有人故意删了@回复,还可以通过查找父级评论id来确定邮件发送对象 $parent_id=$comment->comment_parent; SimPaled_send_email($parent_id,$comment); }else return; } add_action('comment_post', 'comment_mail_notify'); function SimPaled_send_email($parent_id,$comment){//发送邮件的函数 by Qiqiboy.com $admin_email = get_bloginfo ('admin_email');//管理员邮箱 $parent_comment=get_comment($parent_id);//获取被回复人(或叫父级评论)相关信息 $author_email=$comment->comment_author_email;//评论人邮箱 $to = trim($parent_comment->comment_author_email);//被回复人邮箱 $spam_confirmed = $comment->comment_approved; if ($spam_confirmed != 'spam' && $to != $admin_email && $to != $author_email) { $wp_email = 'no-reply@' . preg_replace('#^www\.#', '', strtolower($_SERVER['SERVER_NAME'])); // e-mail 發出點, no-reply 可改為可用的 e-mail. $subject = '您在 [' . get_option("blogname") . '] 的留言有了回應'; $message = '<div style="background-color:#eef2fa;border:1px solid #d8e3e8;color:#111;padding:0 15px;-moz-border-radius:5px;-webkit-border-radius:5px;-khtml-border-radius:5px;"> <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p> <p>您曾在《' . get_the_title($comment->comment_post_ID) . '》的留言:<br />' . trim(get_comment($parent_id)->comment_content) . '</p> <p>' . trim($comment->comment_author) . ' 给你的回复:<br />' . trim($comment->comment_content) . '<br /></p> <p>您可以点击 <a href="' . htmlspecialchars(get_comment_link($parent_id,array("type" => "all"))) . '">查看回复的完整內容</a></p> <p>欢迎再度光临 <a href="' . get_option('home') . '">' . get_option('blogname') . '</a></p> <p>(此邮件有系统自动发出, 请勿回复.)</p></div>'; $from = "From: \"" . get_option('blogname') . "\" <$wp_email>"; $headers = "$from\nContent-Type: text/html; charset=" . get_option('blog_charset') . "\n"; wp_mail( $to, $subject, $message, $headers ); } }
这篇是过渡文章,为下篇文章的代码做准备。
zww
赏
oooo
or
- 本文标题:整理: WordPress 评论回复邮件通知代码
- 本文链接:https://zww.me/archives/25536
- 发布时间:2011年10月24日 16:39
- 版权声明:除非注明,文章均为 zwwooooo 原创,转载请以链接形式标明本文地址!
正在寻找类似的文章,自己的邮件回复,链接是文本形式的,想实现超链接形式,关注中!
@秦天SEO
慢慢折腾
板凳
等下篇
先评论了再说
留名看下篇 話說這個跟willin寫的有什麼分別?
@小闇
差不多,稍微有点不同。
呵呵 不错 我就是kan大叔的主题
求不被Gmail归入SPAM攻略
@phoetry
以前也碰到过,我换了个域名就没碰到过这种事了
@phoetry
这个真不知道如何
表示有些主机不支持php mail函数的压力会巨大~
不过还好网上有解决方案。ZWWoOoOo能不能也帮忙找个方案?
@Dick_Wu
博客主机好像都支持的吧?去和主机商抗议
@Dick_Wu
不支持解决方法很简单:换主机,哈哈哈
@寂静
嗯。支持的~
但是我在二级目录下的网站就不知吃了。。不知道是不是我技术原因。。。。
还好我找到了解决方案~
我现在用W大大的。
@Demon
willin的本来就好,这个类似的。
很好奇下篇会是什么
@axiu
哈哈哈,卖关子
这个实用,继续等下篇
@阿福
比较方便
这个可以有啊
请问z神我想实现这样个缩略图功能应该怎么做、?
任意上传大小图片,设置为特色图像后
首页固定宽度200,高度不限,但必须是全图的缩略效果。
比如我上传一张500X500的图片
首页自动缩放为200X200
如果我上传一张400X600的图片
首页就自动缩放为200X400
就是要等比例缩放来达到现实全图的功能。。
希望高手帮忙实现。!
邮箱:181499578@qq.com
@折子戏
其实你不考虑生成缩略图,可以直接用css来控制图片大小,如给图片加上 width:200px; height:auto;
即可。
如果你要利用wp原生的缩略图片功能生成缩略图,那么就要定义大小,然后修改定义特色图片的大小,加上非裁剪参数。具体参考wp官方codex
学习了:)正要加入这个功能,不过我觉得这个功能有的时候又会很讨厌,总是给我发一堆别人的回复。
@尘埃影像
博主回复才通知
俩月前弄过一个类似的,配合两层嵌套,向被@的人发送邮件通知。
@企鹅君
现在来说是比较常用的功能
来试试回复样式
还是有勾勾选择的哪种可善点。。
@yesureadmin
呵呵,博主回复才通知没神马关系,最怕那种谁回复都通知的
很给力哦,话说我用插件都不生效,要关了Ajax才生效,用了小z的之后给力了
其实插件是可以的,但是要删一段代码。
围观链接
@寂静
小z……我立即年轻10几岁。
终于wordpress又有文章了,呵呵。
@郑永
没啥好写啦
期待中,这个功能实在想要,也不是知道自己的博客有没有这个功能。
@love02xp
这……有没有都不知道就够糊涂了……
俺用的就是这代码
@win8迷
都是差不多的东西