以前就注意到 wp 有这个功能了,可以在评论被回复时发邮件通知评论者,是个增强用户粘性的好方法。然而窝这犄角旮旯的能来几个人就不错了,哪有人闲得蛋疼来评论呢,所以咱也就没在意。

然而就在昨天,窝的博客迎来了激动人心的历史上的跨越:

有窝不认识的人发表了评论!

woc 窝当时心里真激动啊,这是评论者的一小步是人博客的一大步啊20150715224933

窝当时就抄起键盘准备回复,突然一想没有邮件通知玩个卵啊

遂搜索了一大堆方法,其中也踩了不少坑,在这里记录一下。

原生 wp 的邮件发送是使用 php 的 mail() 函数,这点在后台登陆页的忘记密码处可以得知。你可以在 探针 里查看你的 mail() 函数是否启用。使用 mail() 函数的方法请自行搜索。

首先去找一个启用 SMTP 的插件,这里推荐 Easy WP SMTP。配置不多说,请自行搞到能收到测试邮件。

如果你的主题自带回复提醒的话现在就可以测试一下了 // 坑1

对于没有这个功能主题,打开开主题的 function.php ,在合适位置加入如下代码:

//评论回复邮件 function comment_mail_notify($comment_id) { \(comment = get_comment(\)comment_id); $parent_id = $comment->comment_parent ? $comment->comment_parent : ’‘; $spam_confirmed = \(comment->comment_approved; if ((\)parent_id !=’‘) && ($spam_confirmed != ’spam’)) { \(wp_email = 'reply@' . preg_replace('#^www\.#', '', strtolower(\)_SERVER[‘SERVER_NAME’])); //发件人邮件地址 \(to = trim(get_comment(\)parent_id)->comment_author_email); $subject = ‘有人回复你在’ . get_option(“blogname”) . ’ 上的评论辣’; //酌情更改 \(message = '<table style="width: 99.8%;height:99.8% "><tbody><tr><td style="background:#FAFAFA url(https://files.prinzeugen.net/Resources/pics/mail_background.png)"><div style="background-color:white;border-top:2px solid #12ADDB;box-shadow:0 1px 3px #AAAAAA;line-height:180%;padding:0 15px 12px;width:500px;margin:50px auto;color:#555555;font-family:Century Gothic,Trebuchet MS,Hiragino Sans GB,微软雅黑,Microsoft Yahei,Tahoma,Helvetica,Arial,SimSun,sans-serif;font-size:12px;"> <h2 style="border-bottom:1px solid #DDD;font-size:14px;font-weight:normal;padding:13px 0 10px 8px;"><span style="color: #12ADDB;font-weight: bold;">> </span>您在<a style="text-decoration:none;color: #12ADDB;" href="' . get_option('home') . '"> ' . get_option('blogname') . ' </a>博客上的留言有回复啦!</h2> <div style="padding:0 12px 0 12px;margin-top:18px"><p>' . trim(get_comment(\)parent_id)->comment_author) . ’ ,您曾在文章《’ . get_the_title(\(comment->comment_post_ID) . '》上发表评论:</p> <p style="background-color: #f5f5f5;border: 0px solid #DDD;padding: 10px 15px;margin:18px 0">' . nl2br(get_comment(\)parent_id)->comment_content) . ’

’ . trim(\(comment->comment_author) . ' 给您的回复如下:</p> <p style="background-color: #f5f5f5;border: 0px solid #DDD;padding: 10px 15px;margin:18px 0">' . nl2br(\)comment->comment_content) . ’

您可以点击 查看回复的完整內容 。欢迎再次光临 ’ . get_option(‘blogname’) . ’

此邮件由系统自动发出,就算你回复了窝也不会回复你哟 ゚∀゚)σ