WordPress 根据评论数量来判断是否显示评论者链接

投稿   龙笑天下  2017-04-19 07:30:58  223 人阅读  30 条评论

投放广告联系   诚邀合作伙伴   赞助我们   本站公告   轻松一刻

本文主要讲的是你可以根据评论数来控制是否显示留言者的链接。比如说只有当评论者的评论数大于一万的时候才显示链接,如果小于一万则不显示。当然,一万只是说说而已。

WordPress 根据评论数量来判断是否显示评论者链接 WordPress 第1张

这里评论数肯定要根据邮箱来统计了,于是最基本的思路就是根据邮箱来获取评论数,然后再根据评论数获取邮件链接,虽然能达到效果,但是非常不科学,这样每条评论都会去查询一次,非常耗费性能,对于个人博客来说可能影响不是很大,但是有更好的解决方案那最好就不使用这个方法了。

我的思路是把判断过程放在发布评论的时候,然后设置一个白名单,如果评论数大于指定数值,则把这个邮箱加入到白名单中。然后根据这个白名单来控制是否显示评论者的链接。这样就做到了性能最优。

将以下代码加入functions.php中即可:

  1. /**
  2.  * WordPress 根据评论数量来判断是否显示评论者链接 - 龙笑天下
  3.  * http://www.ilxtx.com/display-or-hide-comment-links-according-to-comments-number.html
  4.  * 原作者:https://fatesinger.com/78892
  5.  */
  6. function lxtx_fa_is_friend( $email = null , $num = 5 ){
  7.     $count = get_comments(array(
  8.         'author_email' => $email,
  9.         'count' => true,
  10.     ));
  11.     return ( $count > $num );
  12. }
  13. function lxtx_fa_update_friend_list( $comment_id ){
  14.     $comment = get_comment($comment_id);
  15.     $friend_list = get_option('friend_list') ? get_option('friend_list') : array();
  16.     $email = $comment->comment_author_email;
  17.     if ( lxtx_fa_is_friend($email) && !in_array( $email , $friend_list) ) {
  18.         $friend_list[] = $email;
  19.         update_option('friend_list',$friend_list);
  20.     }
  21. }
  22. add_action('comment_post', 'lxtx_fa_update_friend_list');
  23. function lxtx_fa_show_friend_link( $return , $author$comment_ID ){
  24.     $comment = get_comment( $comment_ID );
  25.     $email = $comment->comment_author_email;
  26.     $friend_list = get_option('friend_list') ? get_option('friend_list') : array();
  27.     if ( in_array($email,$friend_list) ) {
  28.         return $return;
  29.     } else {
  30.         return $author;
  31.     }
  32. }
  33. add_filter('get_comment_author_link','lxtx_fa_show_friend_link',10,3);

lxtx_fa_is_friend 这个函数第二个变量 num 就是控制显示的数量,根据你的需要酌情处理。

注意本方法仅适合使用 the_author_link() 来输出评论者昵称的主题,一般来讲,标准主题都会使用这个函数。如果你使用了自定义拼接的html 只需要再加个邮箱是否在白名单的判断即可。

注:如果添加了此代码,则之前所有的评论都是将不显示评论链接,只有当访客发表新的评论后,若评论数量达标则以前所有的评论都会显示链接!

友情提示:本站已启用此功能,达到“评论达人1”即可显示链接哦!大家赶紧来留言解锁自己的链接吧~ 嘿嘿嘿

方法拓展:

相信很多博客网站都启用了通过评论数来确定游客等级的功能,其实上面的功能也可以通过游客等级这个思路来实现,具体的实现方法就不赘述了~~

如果文章对你有帮助,请赞赏支持作者继续创作!

历史上的今天:

文章标签: ,   ,  
原文地址:http://www.ilxtx.com/display-or-hide-comment-links-according-to-comments-number.html
温馨提示:文章内容仅代表作者个人观点,不代表boke112导航赞同其观点和对其真实性负责!
版权声明:本文为投稿文章,感谢 龙笑天下 的投稿,版权归原作者所有,欢迎分享本文,转载请保留出处!
WordPress虚拟主机和VPS服务器推荐

 发表评论


  1. devoted
    devoted 【举人】 @回复

    很多教程都没有最终效果图,感觉很是蛋疼。。

    • boke112导航
      boke112导航【村长】2017-07-15 09:51  回复

      @devoted这种类型很难通过靠效果图来说明,正想要实现这种功能,唯有动手去折腾试试才行

  2. 倚楼听风雨
    倚楼听风雨 【书童】 @回复

    我觉得还是人工审核好些,具体看个人了。

    • boke112导航
      boke112导航【村长】2017-05-18 08:46  回复

      @倚楼听风雨感觉现实评论者链接还是有必要的,不过可以根据这个思路来判断是否为链接添加nofollow标签,可能会更好

  3. 灵异世界
    灵异世界 【进士】 @回复

    这个挺使用的、

  4. 天下石磨磨浆机
    天下石磨磨浆机 【秀才】 @回复

    进来踩踩

  5. 姜辰
    姜辰 【进士】 @回复

    猜猜能不能点我的头像?

  6. 菊部
    菊部 【秀才】 @回复

    这个貌似还比较合理

  7. 吃货小栈
    吃货小栈 【举人】 @回复

    我也阿里秀一下!

  8. 明月登楼
    明月登楼 【王爷】 @回复

    再来露个脸!

  9. 阿里书籍
    阿里书籍 【尚书】 @回复

    厉害 又是学到了一招

  10. YangOne
    YangOne 【进士】 @回复

    挺有用的东西

  11. 星空游戏
    星空游戏 【举人】 @回复

    就怕别人故意刷

  12. 网赚博客
    网赚博客 【书童】 @回复

    这个很经典啊

  13. 呆毛电脑配置网
    呆毛电脑配置网 【进士】 @回复

    直接屏蔽掉外链。

  14. 御宅学院
    御宅学院 【秀才】 @回复

    这个会不会造成有人故意刷评论

  15. 外链工具
    外链工具 【秀才】 @回复

    这个确实挺不错的,很实用。

  16. 战略
    战略 【举人】 @回复

    厉害了我的哥

  17. 橘子书
    橘子书 【丞相】 @回复

    [鼓掌] 有想过写进这个功能,但想想算了。

  18. 雅兮网
    雅兮网 【尚书】 @回复

    思路不错,方法使用,一股清流

  19. 闲鱼
    闲鱼 【状元】 @回复

    我现在都有种屏蔽所有评论者链接的冲动了,有些人的评论没什么意思,都是为了链接推广。但是对于那些用心留言的人来说这样又不太好

  20. benen005
    benen005 【进士】 @回复

    这很有用

  21. 辩论吧
    辩论吧 【尚书】 @回复

    这个功能挺好的,也没有一棍子打死那些发外链的

  22. 金榜台博客
    金榜台博客 【状元】 @回复

    每天都来看看

  23. 演绎法
    演绎法 【进士】 @回复

    我好像来晚了

  24. 明月学习笔记Blog
    明月学习笔记Blog 【进士】 @回复

    我就坐个板凳吧!嘿嘿!

  25. 明月登楼
    明月登楼 【王爷】 @回复

    不错,很实用!顺便过来坐个沙发!