WordPress优化:为博客添加评论回复后邮件通知

顾名思义,就是当有人在我们的博客进行留言,然后我们管理员或者其他人给他的留言有了回复后,可以通过邮件通知他他在那篇文章的留言有了新的回复。这个功能虽然很小,但是却是非常人性化的,而且可以极大的提高用户体验。

添加这个效果很简单,只需要在我们使用的主题的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);

注:代码不是我原创的,是我根据两个互联网上的版本修改而成。

这段代码是我现在正在使用的,大家可以根据自己喜好自行修改,这里权当参考。添加之后的效果如下:

特别申明:

开启回复评论邮件通知回复者,这个功能实际上是有一定风险的,因为一些发垃圾广告的人可以根据这个功能,对网站中其他正常的评论大量回复垃圾信息,然后这些垃圾信息就没有限制的直接发送到正常评论的作者的邮箱去了,相当于我们的网站就成了垃圾广告传播的帮凶了

当然补救方法也是有的,那就是:在评论显示之前,我们先进行审核。我的做法是在“设置”那里开启在评论显示之前“评论者先前须有评论通过了审核”。这样做虽然麻烦了一点,但是抵制垃圾广告不正是我们站长应该承担的责任吗?

时间: 2024-10-11 05:18:09

WordPress优化:为博客添加评论回复后邮件通知的相关文章

为Hexo博客添加评论模块

1. 登录多说网站http://duoshuo.com/,创建站点: 123 可以使用常用的社交账号进行登录,无需注册选择`我要安装`来创建一个站点录入基本的创建信息,点击`创建`按钮来创建一个站点 2. 修改主题配置文件: 我用的主题是freemind,主题地址https://github.com/wzpan/hexo-theme-freemind.git,修改主题的步骤请参考”修改Hexo博客主题”1.打开当前主题路径/_config.yml,找到duoshuo_shortname标签,设置

杨泽业:给你的wordpress博客添加SMTP邮件服务,评论以后邮件通知

当你的博客有人评论的时候,就会收到邮件通知,那是非常好的体验,有人评论了自己第一时间知晓.特别是,有人在你的博客留言,需要有人解答问题的时候,这个人是迫切的需要及时通知的,有的评论自动邮件通知的话,那么就轻松了. 要实现评论邮件通知,还是不难的.下面,我就说说,使用腾讯的免费企业邮箱配置SMTP邮件服务.(没有企业邮箱的请查看我上一个文章<用你自己的域名免费的开通腾讯企业邮箱图文教程>) 先在模板函数 (functions.php)文件底部添加下面代码即可,邮箱的帐号密码改成自己的帐号密码.

为你的WordPress博客添加CSS3炫酷读者墙

为你的WordPress博客添加CSS3炫酷读者墙,也就是把你文章的评论最活跃的读者显示在单独的一个页面,先看看效果吧: 1.复制主题的page.php,另存为readerwall.php,然后在其顶部添加代码 1 2 3 4 5 < ?php /* Template Name: Reader wall */ ?> 2.接着改文件下面找到 1 < ?php the_content('');?> 在它的前面添加下面的代码 1 2 3 4 5 6 7 8 9 10 11 12 13 1

杨泽业:给你的wordpress博客添加留言板的功能

添加一个留言板的功能相对来说,还是比较好的用户体验,比如某个用户,在你的专业里面,有需要向你咨询的地方,而生适合公开发布的话,用户直接给你留言即可,你回复他以后,他就能通过邮箱收到通知,提醒查看回复的答案. 基于这样的原因,泽业建站网就教大家添加留言板的功能. 第一步:添加一个叫做[给我留言]的独立的页面. 方法:后台--页面--新建页面,填写好标题,自定义url,在加上一句你想说的话就可以发布了. 给你的博客添加留言的功能 到了这一步,给我留言的页面还是无法评论(留言)的,怎么办呢?其实也是很

WordPress添加评论回复的电子邮件警报通知

评论回复帖子,主动发送电子邮件通知评论员,这是提高的一大举措的用户体验.倡导孟一直在使用Willin Kan主评论回复电子邮件警报通知码,我相信很多人也使用,假设你没有使用.最好的尝试. 根据自己的需要,选择一个代码,根据自己的需要,新增的主题 functions.php 或者 pluggable.php(推荐) 文件的 最后一个 ?> 前面就可以: 方法一:全部回复都发送邮件通知 默认全部填写了邮箱的评论都将发邮件提醒评论人,没有不论什么勾选设置. /* comment_mail_notify

杨泽业:给你的wordpress博客添加经典语录功能,适合所有php网站

我们做一个网站就是要不断给访客提供最佳的用户体验,同时提升自己的品牌价值,而文章结束的经典语录的功能,完全可以实现我们所要达到的效果.(如下图) 给你的wordpress博客添加经典语录功能 这个是怎样实现的呢?其实很简单,下面我就将核心文件和代码分享给大家. 第一步:添加语录功能的核心文件. 在网站的根目录里面添加一个yulu的文件夹,里面含有index.php和yulu.txt两个文件.其中index.php里面是核心代码,yulu.txt是要显示的经典语录,一条占用一行. 文末免费给出了所

#WordPress小技巧#纯代码为自己博客添加支付宝/微信打赏功能

原文:https://www.wn789.com/13323.html 很多人的WordPress博客在文章尾部都有打赏功能,让读者可以直接通过扫描微信.支付宝二维码进行赞助,毕竟维护博客,编写博文需要花费不少的精力,大多数朋友和蜗牛一样都是利用自己业余时间对博客进行管理与维护(如果大家觉得蜗牛789文章能起到一定帮助作用,也欢迎对蜗牛进行打赏,目前大家可以通过支付宝扫红包活动对蜗牛进行打赏,无需自己掏腰包#每日#支付宝扫码最高领取99元红包 可用于店面消费或捐赠蜗牛). 在此文章中蜗牛为大家分

hexo next主题为博客添加分享功能

title: hexo next主题为博客添加分享功能 date: 2018-01-06 20:20:02 tags: [hexo博客, 博客配置] categories: hexo next主题配置 --- 今天心血来潮,决定给博客添加分享功能,百度上首先是找到了使用shareSDK的分享功能,最后在实践的过程中发现它添加时步骤比较多,添加完成后效果比较丑(就是一个长条的浅蓝色按钮),而且点击后想要退出分享比较麻烦(它的取消按钮实在太难找了,它在页面最下方的位置,呈现浅灰色,这个设计太反人类了

Hexo博客添加在线联系功能

title: Hexo博客添加在线联系功能 date: 2018-08-29 21:03:11 tags: - 博客 - git - hexo - 博客优化 categories: 搭建博客 --- Hexo博客添加在线联系功能 Hexo博客如何添加在线联系功能呢,发现了一个不错的网站可以提供在线联系的服务,当有用户在网页上给你留言后会通过邮件或者微信通知你,可以及时的解答用户的疑问. 最终的效果可以参考我博客的右下角,有个聊天的按钮,效果如下所示: 配置方法如下: 首先到DaoVoice上注册