WordPress评论通过审核后邮件通知评论者

日期: 标签:WordPress教程
如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务:  点此联系我

     WordPress自带一项功能,就是访客对文章发表评论后,可以设置:在评论显示之前 须经由管理员审核,这可以避免了一些垃圾评论对网站的影响。对此,有评论等待审核时,WordPress会自动给网站管理员发送一封通知邮件,但是评论被管理员审核通过后,WordPress并不会给评论者发送通知,这会给正常的评论者造成一些困惑。

     如何让评论通过审核后,给评论者发送一封通知邮件呢?我们可以在当前主题的functions.php中添加以下PHP代码:

add_action('comment_unapproved_to_approved', 'ludou_comment_approved');

function ludou_comment_approved($comment) {
  if(is_email($comment->comment_author_email)) {
    $post_link = get_permalink($comment->comment_post_ID);
    
    // 邮件标题,可自行更改
    $title = '您在 [露兜博客] 的评论已通过审核';
    
    // 邮件内容,按需更改。如果不懂改,可以给我留言
    $body = '您在露兜博客《<a href="'.$post_link.'">'.get_the_title($comment->comment_post_ID).'</a>》发表的评论:<br />
            '.$comment->comment_content.'<br /><br />
            已通过管理员审核并显示。<br />
            您可在此查看您的评论:<a href="'.get_comment_link( $comment->comment_ID ).'">前往查看</a>';
            
    @wp_mail($comment->comment_author_email, $title, $body, "Content-Type: text/html; charset=UTF-8");        
  }
}

     最后用UTF-8编码另存为,替换原来的functions.php就可以了。代码中的邮件内容是按照我个人想法写的,如果你不懂怎么修改,可以给我留言,附上你的邮件内容范例即可。

-- 完 --

本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜即刻 https://www.ludou.org/wordpress-email-notify-after-comment-approved.html
露兜
kaapass@outlook.com  QQ 825533758

业余编程爱好者。

33 条留言

点此留言
  1. A.yi A.yi

    杀了个花

  2. yxiao yxiao

    有用

  3. 一堵墙 一堵墙

    看看。

  4. 麦田一根葱 麦田一根葱

    有用收藏之

  5. 新蜂网 新蜂网

    这个功能不错

  6. 大肥羊 大肥羊

    这个挺人性化的。

  7. 旅途电台 旅途电台

    教程不错,感谢分享哦

  8. 才子城 才子城

    有没有啥软件直接装上就能有这个功能的,不太喜欢用PHP程序弄。

  9. Louis Han Louis Han

    用插件实现的就无压力了

  10. 好店品 好店品

    怎样调用 custom post type类型文章登录用户的投稿数量呢?求回复

  11. 霓虹 霓虹

    请问一下:以前使用all in one seo插件,现在没用这 个插件了。直接在头部文件添加代码,查 看源码也是显示的,可是用站长工具,再 怎么都查不到网站描述与关键词,也更新 了缓存,请问怎么回事?

  12. 移动互联百科 移动互联百科

    可惜了,我的博客后台查找邮件插件一直出错,还没找到解决方案。不知道是不是linux服务器的问题。

  13. 霓虹 霓虹

    请问个问题:以前使用all in one seo插件,现在没用这 个插件了。直接在head文件添加代码,查看源码也是显示的,可是用站长工具,再 怎么都查不到网站描述与关键词,也更新 了缓存,请问怎么回事?

  14. 段王爷 段王爷

    正为这个问题困扰,感谢分享

  15. 恒创科技 恒创科技

    这个功能确实很好用,以前记得很多新手不会搞,这次很详细的教程了。

  16. 忘想 忘想

    正在找这个,谢谢博主

  17. jigang

    comment_unapproved_to_approved 这个hook在哪个文件下面呢?

    • Ludou

      @jigang 不在特定文件中

      • jigang

        @Ludou 那这个do_action('comment_unapproved_to_approved')怎么调用的?

  18. jigang

    那这个do_action('comment_unapproved_to_approved')怎么调用的?

  19. 峰尚博客 峰尚博客

    露兜这个东西一直是我找的,太谢谢你了

  20. 峰尚博客 峰尚博客

    您并没有说如何使用

  21. 李英杰 李英杰

    站长,如果想没有通过,也通知一下呢,如何操作?求指教。

    • 露兜

      @李英杰 后台 – 设置 – 评论

      • 李英杰嗨C 李英杰嗨C

        @露兜 我拒绝对方的评论,也要邮件通知,没有这个啊,因为有这个功能可以告诉对方,他发的是水贴。

        • 露兜

          @李英杰嗨C 复制同样的代码到functions.php,
          把comment_unapproved_to_approved改成comment_unapproved_to_trash
          把两处ludou_comment_approved改成ludou_comment_trash
          把邮件内容改一下

          这样把待审的评论移到回收站就会有通知

          • 李英杰嗨C 李英杰嗨C

            @露兜 非常感谢,测试通过,是删除到回收箱就会提示。

  22. vince

    你好,有个问题请教一下。
    怎么设置发件人的名字呢,现在发件人的名字都会是WordPress,而不是博客名字

    • 露兜

      @vince 百度一下:Wordpress 发件人 名称

  23. vince

    请问怎么回复后直接定位在评论 显示评论正在审核

发表留言