博客最近受到了垃圾评论大军凶猛的攻击,每天都有近10条垃圾评论出现。从数量来看不是很大,但是两三天不删一下的话,博客就惨目忍睹了。为了防范垃圾评论,我在Wordpress后台也进行了一些设置,但从目前的效果来看并不是很好,真的是防不胜防啊。

博客建立初期,频繁遭到英文垃圾评论,每天大概能收到50条左右,为此我在主题目录下的functions.php中写入了如下代码,其原理和Some Chinese Please插件,要求用户评论中必须包含中文字符,否则数据库拒绝接受评论内容。这个效果非常明显,使用之后英文垃圾评论基本上就和我的博客说拜拜了。

<?php
function scp_comment_post( $incoming_comment ) {
$pattern = '/[一-龥]/u';
// 禁止全英文评论
if(!preg_match($pattern, $incoming_comment['comment_content'])) {
wp_die( "You should type some Chinese word (like \"你好\") in your comment to pass the spam-check, thanks for your patience! 您的评论中必须包含汉字!" );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'scp_comment_post');

但如今,中文垃圾评论来袭,让我不知所措。这些评论很明显是机器发表的,评论内容前会有一串字符,内容也并非“踩”“顶”之类的灌水,而是颇有内涵,少数甚至和博文内容非常贴切。我将这些垃圾评论称作“软评论”,和“软文”的概念相对。仅仅看评论内容,很难将其划归到垃圾评论的范畴。

现在我每天都要花费一些时间来删除中文垃圾评论,我想不出什么好办法来阻止。我不太喜欢在评论中添加验证码机制,觉得这样会严重阻碍读者积极参与到博文内容的评论中,不利于交流。可是除了验证码,还有什么方法能阻止这些垃圾评论呢?