← 风清的精神角落 | 记事

禁止垃圾评论

这几天垃圾评论爆炸式增长,今早一看,一下子有几十个之多,看来这个防垃圾评论的插件也只能将垃圾评论归归类而已,到头还是得让我来删除。

搜了搜,看到一个好办法。是博主逍遥乐的一篇分享,具体的不说了,简单讲就是在将下面代码加到主题functions.php模板文件中,就可以杜绝纯英文的垃圾评论。

 /* 评论必须包含中文 拦截spam */ 
function refused_spam_comments( $comment_data ) { 
$pattern = '/[一-龥]/u'; 
if(!preg_match($pattern,$comment_data['comment_content'])) { 
err('评论必须包含中文,谢绝英文垃圾留言。'); 
} 
return( $comment_data ); 
} 
add_filter('preprocess_comment','refused_spam_comments');


12条回应:“禁止垃圾评论”

  1. zeruns说道:

    可以用百度的内容审核API,好像有人做了wp版的插件

  2. 小蕾说道:

    你的站点没用Akismet这个插件吗?

  3. Mr.Chou说道:

    我的博客没什么流量,垃圾评论都不来..嘿嘿。

  4. 大致说道:

    还在用传统的提交吗?传统的调用wp-comments-post太危险了,WP十几年都没解决这个问题。换成ajax留言,然后禁掉这个文件,能干掉大部分的机器人。

    • 风清说道:

      你是说我现用的这个办法太危险了?会有哪些危险?我不太了解这方面。

    • 大致说道:

      设成必须带中文还是有点用的。我说的危险是WordPress自带的评论系统危险。因为是指向文件的,所以专门的垃圾评论机完全可以绕过你的页面,直接对文件进行评论提交。WP团队也采取了很多措施,但总是道高一尺魔高一丈。所以中文WP圈流行的做法是干脆不用这个文件,把这个文件删掉,改成只能在页面上通过js提交。

    • 风清说道:

      哗…………

  5. 投光灯厂家说道:

    你是用什么博客系统,emlog可以设置必须包含中文。