WordPress 限定显示评论者链接

嗯,折腾无止境。这个功能是,你可以根据评论数来控制是否显示留言者的链接。比如说只有当留言者的评论数大于等于 1024 的时候才显示链接,否则不显示。当然,1024 只是个传说,你可以根据实际修改。

原文:大发 - WordPress 限定显示评论者链接 - https://fatesinger.com/78892

实现原理

这里的评论数根据邮箱来统计,最基本的思路就是根据邮箱来获取评论数,然后根据评论数决定是否显示留言者链接。这样虽然能达到效果,但是非常不科学,因为每条评论都会去查询一次,非常耗费性能。

最终方法是:把判断过程放在评论发布的时候。留言者发布评论的时候,系统获取留言者评论数。如果评论数大于指定数值(比如 1024),则把这个留言者(邮箱)加入到白名单中。然后根据这个白名单来控制是否显示留言者的链接。

实现代码

function fa_is_friend( $email = null , $num = 5 ){
$count = get_comments(array(
'author_email' => $email,
'count' => true,
));

return ( $count > $num );
}

function fa_update_friend_list( $comment_id ){
$comment = get_comment($comment_id);
$friend_list = get_option('friend_list') ? get_option('friend_list') : array();
$email = $comment->comment_author_email;
if ( fa_is_friend($email) && !in_array( $email , $friend_list) ) {
$friend_list[] = $email;
update_option('friend_list',$friend_list);
}
}
add_action('comment_post', 'fa_update_friend_list');


function fa_show_friend_link( $return , $author, $comment_ID ){
$comment = get_comment( $comment_ID );
$email = $comment->comment_author_email;
$friend_list = get_option('friend_list') ? get_option('friend_list') : array();
if ( in_array($email,$friend_list) ) {
return $return;
} else {
return $author;
}
}
add_filter('get_comment_author_link','fa_show_friend_link',10,3);

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

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

添加了此功能代码,则之前所有的评论都显示评论链接,只有当留言者有了新的评论才会出发白名单的更新。

最后,如果你能用将此功能在你优秀的付费主题中,就去打赏大发一下吧!

老杨这里已经用上,来试试看。

除非注明,沙唐桔文章均为原创,本文地址 https://cyhour.com/442/,转载时必须以链接形式注明原始出处。
声明:我们不销售主机,选主机需合法使用。任何主机需定期备份,防止数据丢失。信息以实际为准,评测仅供参考不代表权威!

贫困是因为懒惰吗?

李小云:中国农业大学文科资深讲席教授、小云助贫中心发起人、国务院扶贫开发领导小组专家咨询委员会委员。原文 社会大众一般所持有“个人努力脱贫模式”认为一个人的命运掌握在自己手上,穷人之所以贫困是因为懒惰。事实上,在贫富分化的社会现实中,穷人和富人往往不在同一起跑线上,穷人依靠个人…
浏览: 165 标签:  ,  , 

广州海珠通报英国输入确诊病例治愈后复阳又转阴

今日(2021年1月7日)下午4时许,广州市海珠区疾病预防控制中心微信公号「海珠健康」发布通告:广州海珠通报英国输入确诊病例治愈后复阳又转阴,周围环境样本阴性。 2021年1月6日,广州市海珠区发现1名境外输入确诊病例出院后检测阳性,海珠区新冠肺炎疫情防控指挥部立即启动应急处置工作。该…

莫德纳(Moderna)宣布疫苗最新三期临床试验数据:100%预防新冠重症

当地时间11月30日,美国医药公司莫德纳向美国食品与药品监督管理局(FDA)申请该公司的新冠疫苗的紧急使用授权。在申请报告中,莫德纳指出,该公司的疫苗可100%预防新冠重症。 维基百科:莫德纳(英语:Moderna),是一家总部位于美国马萨诸塞州剑桥市的生物技术公司,公司主要负责基于信使核…
浏览: 74 标签:  ,  ,  ,  , 

新冠病毒源头可能永远找不到

中关村论坛平行论坛之一,全球科学与生命健康论坛2020年9月18日在京举行,中国科学院武汉病毒研究所研究员石正丽发表题为“新冠肺炎病原学鉴定和可能的起源”主旨演讲。 石正丽在接受新京报记者采访时表示,团队正在溯源新冠病毒的自然源头,不过新冠病毒借由哪种中间宿主、如何从自然界传播到人类,…
浏览: 109 标签:  ,  ,  ,  ,  , 
浏览: 163 标签: 

Comments:42

  1. 我来试试。请问我的头像啥时候能给我显示出来?

    2016.11.04 13:11 # 回复
    1楼
    • @方室网志 这我还真不知道,我没有用缓存插件,官方的 SSL……其实我一直想问你为啥不整个头像呢……

      2016.11.04 14:17 # 回复
    • @方室网志 看了你现在有头像的邮箱,之前的邮箱是错的吧?所以没有头像?囧~

      2016.11.22 09:27 # 回复
  2. 我的评论能显示吗

    2016.11.04 13:35 # 回复
    2楼
  3. 这个功能挺有意思的。
    我在想要不要在评论框加上显示评论者留言数量的功能。但是又没想到好的css表现形式。

    2016.11.04 14:40 # 回复
    3楼
  4. 沙唐桔-自定义
    自定义

    这样的话,我的就不现实了 0.0

    2016.11.04 16:25 # 回复
    4楼
  5. 无折腾不博客

    2016.11.04 17:02 # 回复
    5楼
  6. 实际显示的留言数会减少~何必呢~

    2016.11.04 19:23 # 回复
    6楼
    • @chencool 实际显示的留言数会减少?啥意思?是说加了这个会打击评论者积极性,而减少评论?

      2016.11.04 19:45 # 回复
      • @老杨 评论少的不会显示。标题不应叫“限定显示评论者链接”,而是限制评论者留言显示~

        2016.11.04 20:44 # 回复
        • @chencool 意思都差不多,留言还是能显示的,只是评论者链接根据数量决定显示不显示。

          2016.11.04 22:15 # 回复
  7. 很少折腾这些,我都打算用回官方主题了。~;~

    2016.11.04 22:58 # 回复
    7楼
  8. 你这是设置了多少才显示链接

    2016.11.04 23:08 # 回复
    8楼
  9. 让我来试一下能不能显示链接啊

    2016.11.05 07:37 # 回复
    9楼
  10. 这样可以防止恶意评论吗?

    2016.11.05 09:43 # 回复
    10楼
  11. 这么说,我是不能显示了

    2016.11.05 14:31 # 回复
    11楼
  12. 这个也是折腾出“境界”了,本来评论链接就被“美化”成自己的链接了,再加这个就没必要了,如果事先没美化倒是可以用用。

    2016.11.06 20:57 # 回复
    12楼
  13. 哈哈,上面那个没显示头像的。。。额。。。我的头像也没显示

    2016.11.08 12:11 # 回复
    13楼
  14. 仔细看看才知道要表达的是什么,原来还有这么奇葩的需求…………

    我是不管三七二十一,先链接上再说!

    2016.11.10 22:14 # 回复
    14楼
    • @随望淡思 这需求并不奇葩吧?不就是为了防那些纯 SEO 的,上来就是为了留链接的?不过用在我这里确实有点多余了。

      2016.11.12 12:16 # 回复
  15. 我突然觉得这个主题还不错呢。。

    2016.11.13 17:39 # 回复
    15楼
  16. 喃阿咪陀佛

    2016.11.15 07:35 # 回复
    16楼
  17. 知更鸟主题能直接加这个代码吗

    2018.10.28 10:17 # 回复
    17楼

发表留言

Vultr 送$100,搬瓦工年付最低$49,优惠码 BWH3HYATVBJW,更多推荐VPS信息