WordPress评论自动邮件回复代码和easy-wp-smtp配置

鸟叔认为能用钱解决的问题那都不是问题,同理能用插件解决的不用去研究网站源代码。当然了学习一点代码还是很有用的。鸟叔の窝最近刚上线,四处去友情,为了能得到链接,去他人博客评论是无可避免的,我发现其他博客博主回复我的评论都到了邮箱里,而且邮件的内容设计到了对方的文章链接和网站链接,这样其实对于真是评论的用户有很大的互动和粘性,博主认真回答肯定会留下不少的回头客,所以鸟叔也参考了不少资料搞了一下,效果不错,分享给需要的博客小白,大咖可以无视。废话不说了。

原料:wordpress博客,邮件内容配置代码,自动回复邮件的插件(wp-smtp或者是Configure SMTP或者easy wp smtp)

配置方法:以easy wp smtp为例子通过添加代码和配置easy wp smtp,最终通过邮件收到评论和用邮件回复评论的目的。

第一,先把回复邮件代码分享出来,然后把下面代码添加到主题functions.php文件内。

function ludou_comment_mail_notify($comment_id, $comment_status) {
// 评论必须经过审核才会发送通知邮件
if ($comment_status !== ‘approve’ && $comment_status !== 1)
return;

$comment = get_comment($comment_id);

if ($comment->comment_parent != ‘0’) {
$parent_comment = get_comment($comment->comment_parent);

// 邮件接收者email
$to = trim($parent_comment->comment_author_email);

// 邮件标题
$subject = ‘您在[‘ . get_option(“blogname”) . ‘]的留言有了新的回复’;

// 邮件内容,自行修改,支持HTML
$message = ‘<div style=”border-right:#666666 1px solid;border-radius:8px;color:#111;font-size:12px;width:702px;border-bottom:#666666 1px solid;font-family:微软雅黑,arial;margin:10px auto 0px;border-top:#666666 1px solid;border-left:#666666 1px solid”><div class=”adM”>
</div><div style=”width:100%;background:#666666;min-height:60px;color:white;border-radius:6px 6px 0 0″><span style=”line-height:60px;min-height:60px;margin-left:30px;font-size:12px”>您在<a style=”color:#00bbff;font-weight:600;text-decoration:none” href=”‘ . get_option(‘home’) . ‘” target=”_blank”>’ . get_option(‘blogname’) . ‘</a> 上的留言有回复啦!</span> </div>
<div style=”margin:0px auto;width:90%”>
<p>’ . trim($parent_comment->comment_author) . ‘, 您好!</p>
<p>您于’ . trim($parent_comment->comment_date) . ‘ 在文章《’ . get_the_title($comment->comment_post_ID) . ‘》上发表的评论: </p>
<p style=”border-bottom:#ddd 1px solid;border-left:#ddd 1px solid;padding-bottom:20px;background-color:#eee;margin:15px 0px;padding-left:20px;padding-right:20px;border-top:#ddd 1px solid;border-right:#ddd 1px solid;padding-top:20px”>’ . nl2br($parent_comment->comment_content) . ‘</p>
<p>’ . trim($comment->comment_author) . ‘ 于’ . trim($comment->comment_date) . ‘ 给您的回复如下: </p>
<p style=”border-bottom:#ddd 1px solid;border-left:#ddd 1px solid;padding-bottom:20px;background-color:#eee;margin:15px 0px;padding-left:20px;padding-right:20px;border-top:#ddd 1px solid;border-right:#ddd 1px solid;padding-top:20px”>’ . nl2br($comment->comment_content) . ‘</p>
<p>您可以点击 <a style=”color:#00bbff;text-decoration:none” href=”‘ . htmlspecialchars(get_comment_link($comment->comment_parent)). ‘” target=”_blank”>查看回复的完整內容</a></p>
<p>感谢您对 <a style=”color:#00bbff;text-decoration:none” href=”‘ . get_option(‘home’) . ‘” target=”_blank”>’ . get_option(‘blogname’) . ‘</a> 的关注,如您有任何疑问,欢迎在博客留言,我都会一一解答,么么哒!!!</p><p>(此邮件由系统自动发出,请勿回复。)</p></div></div>’;

$message_headers = “Content-Type: text/html; charset=\””.get_option(‘blog_charset’).”\”\n”;

// 不用给不填email的评论者和管理员发提醒邮件
if($to != ” && $to != get_bloginfo(‘admin_email’))
@wp_mail($to, $subject, $message, $message_headers);
}
}

// 编辑和管理员的回复直接发送提醒邮件,因为编辑和管理员的评论不需要审核
add_action(‘comment_post’, ‘ludou_comment_mail_notify’, 20, 2);

// 普通访客发表的评论,等博主审核后再发送提醒邮件
add_action(‘wp_set_comment_status’, ‘ludou_comment_mail_notify’, 20, 2);

第二,配置easy wp smtp或者wp-smtp或者是Configure SMTP,用自己邮箱配置插件。插件配置方法是一样的。 先安装启用插件,登录自己的邮箱,在邮箱设置开启POP3/SMTP服务、IMAP/SMTP服务。如下图所示:

安装图片配置好以后,发送一个邮件测试一下看看能否正常发送邮件。

如上图所示,测试电子邮件发送成功说明插件配置成功了。 最后我们自己给自己评论再回复一下,看看能不能正常收到评论回复邮件,正确情况如下图所示:

好了,教程结束,有问题的可以给我留言!

7 Replies to “WordPress评论自动邮件回复代码和easy-wp-smtp配置”

  1. 一眼看下来,好复杂。话说上次我安装那个插件,百度查的时候发现有人利用这个漏洞泄露了很多邮箱信息,有人利用就往邮箱里发广告还是怎么回事,然后我也不敢用了。没有邮件回复功能真的挺鸡肋,想回复一下别人,别人都不知道,更不会回访看到回复。

发表回复

您的电子邮箱地址不会被公开。