WordPress建站过程中发现后台评论每天都会有很多垃圾评论,而且看似这些评论都是非人工群发的。确实,我们可能会遇到很多被软件群发的垃圾评论,比如看到有很多英文留言。这些信息会增加我们每天的删除时间成本,同时对于网站也是不好的。
怎么解决WordPress被群发大量英文评论呢?可能较多的方法就是增加评论验证,需要在评论的时候输入验证码或者其他的验证机制,这些也是不错的办法。其实,只需要通过两段代码,可以实现屏蔽这些评论内容。
一、评论内容需要中文
我们在评论中看到的都是英文或者其他语言,没有中文。那我们就必须评论内容中有中文。
// 评论中需要有中文 laobuluo.com
function wp_refused_spam_comments($comment_data) {
$pattern = '/[一-龥]/u';
$jpattern = '/[ぁ-ん]+|[ァ-ヴ]+/u';
if (!preg_match($pattern, $comment_data['comment_content'])) {
err(__('评论中需要有一个汉字!'));
}
if (preg_match($jpattern, $comment_data['comment_content'])) {
err(__('不能有日文!'));
}
return ($comment_data);
}
add_filter('preprocess_comment', 'wp_refused_spam_comments');
二、禁止评论中有链接
很多人到博客评论留言,都是为了推广网站的,我们禁止链接就没有多少人来发评论了。
//禁止发链接 laobuluo.com
function wp_comment_post( $incoming_comment ) {
$http = '/[href="|rel="nofollow"|http:\/\/|<\/a>]/u';
if(preg_match($http, $incoming_comment['comment_content'])) {
err( "禁止发链接地址!" );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'wp_comment_post');
就这么简单,将两段代码添加到当前WordPress主题中的Functions.php文件中。
评论前必须登录!
注册