非插件实现WordPress评论邮件回复通知的功能
本文概要:非插件实现博主回复访客对Wordpress博文评论的邮件通知的功能教程简介
友情提示→修改代码前请您做好备份
很多使用Wordpress的博主对于插件是深恶痛绝的,因为插件不仅会拖累网站加载速度,还会增加服务器负担,过多的插件显然不是一个好的选择,因此介绍修改代码的方式增加wordpress功能是多数博主的首选!
首先在主题的functions.php文件的最后查找以下代码
//全部设置结束 ?>
在这段之前插入下面的代码:
//评论邮件通知 function comment_mail_notify($comment_id) { $admin_email = get_bloginfo ('admin_email'); // $admin_email 可改為你指定的 e-mail. $comment = get_comment($comment_id); $comment_author_email = trim($comment->comment_author_email); $parent_id = $comment->comment_parent ? $comment->comment_parent : ''; $to = $parent_id ? trim(get_comment($parent_id)->comment_author_email) : ''; $spam_confirmed = $comment->comment_approved; if (($parent_id != '') && ($spam_confirmed != 'spam') && ($to != $admin_email) && ($comment_author_email == $admin_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; border-radius:5px;"> <p>' . trim(get_comment($parent_id)->comment_author) . ', 您好!</p> <p>您曾在 [' . get_option("blogname") . '] 的文章 《' . get_the_title($comment->comment_post_ID) . '》 上发表评论:<br />' . nl2br(get_comment($parent_id)->comment_content) . '</p> <p>' . trim($comment->comment_author) . ' 给您的回复如下:<br />' . nl2br($comment->comment_content) . '<br /></p> <p>您可以点击 <a href="' . htmlspecialchars(get_comment_link($parent_id)) . '">查看回复的完整內容</a></p> <p>欢迎再次光临 <a href="' . get_option('home') . '">' . get_option('blogname') . '</a></p> <p>(此郵件由系統自動發出, 請勿回覆.)</p> </div>'; $message = convert_smilies($message); $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 ); //echo 'mail to ', $to, '<br/> ' , $subject, $message; // for testing } } add_action('comment_post', 'comment_mail_notify');
PS:若修改functions.php文件后出现HTTP500错误,则可按照以下方法修复(此段内容转载自网络)
1、php文件属性错误,将重新上传的functions.php的权限改为644
2、web根目录权限错误,将根目录的权限由错误的777改成755
3、.htaccess文件错误,首先备份原来的.htaccess文件,新建一个空的.htaccess或者编辑服务器上的原文件清空其中内容,修改属性为0666,然后在wordpress后台的设置–固定链接管理中,更新永久链接!
本站文章由垃圾站博主编辑整理,请您在转载后保留原文链接!
非插件实现WordPress评论邮件回复通知的功能:目前有63 条留言
发表评论

还不懂 要慢慢研究这个东东
2014-05-23 上午 9:44我的服务器貌似不能用mail函数,上次你评论了个元芳我没有看法我给你回复收到了吗?话说这文章对我的不支持mail的主机有帮助吗
2012-11-29 下午 8:22不支持mail函数就没办法了,但是可以使用插件的!
2012-11-29 下午 9:20但插件相对于懒人来说,始终是最省事的
2012-11-28 上午 10:07插件的确省事不少啊,但也不要太多
2012-11-28 下午 1:05这个我喜欢,当时是因为服务器不支持,才用多说的…不过现在一直用下去了
2012-11-28 上午 12:22现在差不多服务器应该支持mail函数了
2012-11-28 下午 1:04话说,你这个 验证码是怎么弄的呀 ? 用的是插件? 还是代码?
2012-11-27 下午 12:07是代码做的,你在我的博客里搜一下“验证码”
2012-11-27 下午 12:08哈哈,,主要是你的站名 ,很容易当垃圾留言呀!
2012-11-27 下午 3:55名字太给力了……只能这么说
2012-11-27 下午 5:35呵呵,我用了多说评论,所以这个插件就不需要了!!
2012-11-27 下午 12:07多说总把我拉黑,我也不用它……
2012-11-27 下午 12:08