WordPress如何屏蔽恶意英文评论?

首先想说的是,本博客可以不用登陆即可评论;但是因为这样,招致了一个麻烦,最近本博每天被大量英文垃圾评论,虽然被Akismet Anti-Spam插件 拦截,但是看着回收站的垃圾评论数字,也是让人很膈应,所以今天动手收拾收拾这个问题。

按照本文设置后,将能屏蔽特定关键词、URL、email、评论者名称中只要有关键词就会被屏蔽。

WordPress如何屏蔽恶意英文评论?
WordPress如何屏蔽恶意英文评论?

WordPress屏蔽垃圾评论改造步骤:

首先到后台设置——讨论中找到评论黑名单,在里面添加将要屏蔽的关键词,一行一个。

再去主题目录下找到function.php,DUX是function_theme.php文件,向里面添加如下代码:

/* 评论验证 */ 
function refused_spam_comments( $comment_data ) { 
 if( is_user_logged_in()){ return $comment_data;} //登录用户不验证
 $pattern = '/[一-龥]/u'; //验证是否存在中文
 if(!preg_match($pattern,$comment_data['comment_content'])) { 
 err('评论必须含中文!'); 
} 
 if( wp_blacklist_check($comment_data['comment_author'],$comment_data['comment_author_email'],$comment_data['comment_author_url'], $comment_data['comment_content'], $comment_data['comment_author_IP'], $comment_data['comment_agent'] )){ 
 // header("Content-type: text/html; charset=utf-8"); 
 err('你填写的某项信息或IP地址已被列入黑名单,无法进行评论,请文明评论!'); 
 } else { 
 return $comment_data; 
 } 
} 
add_filter('preprocess_comment','refused_spam_comments');

 

这段代码要求必须满足评论含有中文,且不能含有评论黑名单里的关键词才能正常评论。

 

关注互联网创业 干货|工具|教程|资源
木木资源博客 » WordPress如何屏蔽恶意英文评论?

3 评论

  1. 博主,你好!你这段代码貌似也有问题啊,虽然功能好像起作用了,只是前端的评论区这段代码会变成文本显示出来……

  2. 在后台看了一下测试评论,发现原本的英文评论居然变成了这段代码,这段代码莫名其妙的变成文本显示了......

    1. 没看懂啥意思?

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据

提供最优质的资源集合

大学生必备 职场必备