wordpress防止垃圾评论

Mr.Wu 3,379 0 正在检测是否收录...

wordpress防止垃圾评论

正如上图,今天在外面练车的时候,手机一直叫,各种邮件提醒,给评论添加了邮件提醒,然后垃圾评论一来,跟短信轰炸一样,吓死宝宝了,于是回到家果断做下防范措施。

首先是给评论添加验证码

这里推荐两款插件,SI CAPTCHA Anti-SpammyQaptcha
这2款插件我都装了,SI CAPTCHA Anti-Spam用在注册登录等其他地方,因为这个插件显示面积大,用在评论处很影响美观,我也懒得在去改,所以直接在装了myQaptcha滑动解锁插件,用在评论处,效果可以查看我博客的评论处。
使用了验证码后,能有效的防范一些垃圾评论,但这并不够,还需要添加一些过滤。

对无汉字评论的过滤

这里推荐一款插件,Some Chinese Please它可以有效地拦截内容中不带有中文字的comment和trackback(pingback),不写入数据库中,可有效地减小spam对blog服务器的无谓使用。虽然已经 2 年多没有更新,但还是可用的。
当然,能用代码解决的尽量还是用代码,有大牛翻过此插件的代码,然后给出了简约的代码实现效果。

//评论过滤  
function refused_spam_comments( $comment_data ) {  
$pattern = '/[一-龥]/u';  
$jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u';
if(!preg_match($pattern,$comment_data['comment_content'])) {  
err('写点汉字吧,博主外语很捉急!You should type some Chinese word!');  
} 
if(preg_match($jpattern, $comment_data['comment_content'])){
err('日文滚粗!Japanese Get out!日本語出て行け! You should type some Chinese word!');  
}
return( $comment_data );  
}  

add_filter('preprocess_comment','refused_spam_comments');

最好还是用wp_die函数,因为这个函数回导致博客主题的模板错位,所以我没有用,如果你的不会影响,可以使用wp_die函数:

//评论过滤  
function refused_spam_comments( $comment_data ) {  
$pattern = '/[一-龥]/u';  
$jpattern ='/[ぁ-ん]+|[ァ-ヴ]+/u';
if(!preg_match($pattern,$comment_data['comment_content'])) {  
wp_die('写点汉字吧,博主外语很捉急!You should type some Chinese word!');  
} 
if(preg_match($jpattern, $comment_data['comment_content'])){
wp_die('日文滚粗!Japanese Get out!日本語出て行け! You should type some Chinese word!');  
}
return( $comment_data );  
}  

add_filter('preprocess_comment','refused_spam_comments');

做了这2个防范措施后,至少能阻止大部分的垃圾评论,具体效果可以查看本博客。

参考文:WordPress 如何有效拦截和过滤垃圾评论  非插件实现拦截无中文留言

打赏
发表评论 取消回复
表情 图片 链接 代码

分享
微信
微博
QQ