程的地方,每天闲暇时间写写博客,打理博客已经成为生活中的一部分了。但是,近日在我的博客管理后台发现蛮多的垃圾评论和广告。比如什么牛皮癣啊、打胎啊等与本博客内容差之千里的网站频繁光顾,真是让人头皮发麻。加上如今的一些博客专门灌水工具的出现,垃圾评论将会越来越多。想到很多论坛网站的评论发布系统都带有验证码或者验证问题的,这样就限制了一些软件自动灌水评论。WordPress能不能实现这样的功能呢?答案是肯定的。下面就介绍一下WordPress博客防止垃圾评论的2种方法吧。
WordPress博客防止垃圾评论第一种方法:安装插件
关于这种插件网上也有好几种,比如Math Comment Spam Protection Plugin(一个简单的加法运算的插件)、anti-spam等
anti-spam的WordPress验证码效果
Math Comment Spam Protection Plugin的WordPress验证码效果
以上列出的2个例子都是安装相应的插件实现的。不过,插件安装得太多难免会影响博客访问速度及插件兼容的问题。NiuHH不太推荐这样的方法,因为它不够“环保”,不够“绿色”。推荐下面的方法。
WordPress博客防止垃圾评论第二种方法:修改代码
修改wp-comments-post.php :
查找:
if ( ” == $comment_content )
在其上面添加代码:
//Fufu_checkcode
if ( !$user->ID ) {
$aaa = trim($_POST[aaa]);
$bbb = trim($_POST[bbb]);
$subab = trim($_POST[subab]);
if((($aaa+$bbb)!=$subab)|| empty($subab)){
wp_die( __(‘Error: Please enter the correct results of the math problems.’) );
}
}
//Fufu_end然后修改当前主题目录下的 comments.php (我用的 iNove) ,在适当的位置添加代码,我是在提交按钮之前添加的,即查找:
<input name=”submit” type=”submit” id=”submit”
在其前面添加代码:
<?php if (!$user_ID) : ?>
<?php $aaa=rand(0,5); $bbb=rand(3,9); ?><?php echo $aaa; ?>+<?php echo $bbb; ?>=
<input type=”text” name=”subab” id=”subab” size=”2″ tabindex=”5″ style=”width:20px” /><?php if ($req) _e(‘(required)’, ‘inove’); ?>
<input name=”aaa” value=”<?php echo $aaa; ?>” type=”hidden” />
<input name=”bbb” value=”<?php echo $bbb; ?>” type=”hidden” />
<?php endif; ?>
如果你的主题不是 whitesnow 的话下面这段代码要做相应的修改,这段代码的意思是“(必填)”需要对应模板的语言。
<?php if ($req) _e(‘(required)’, ‘whitesnow’); ?>
修改好后,去看实际的效果如何吧。应该和本博客的效果相同。
如果你嫌修改代码麻烦或者对代码不熟悉,建议选第一种方法。如果你的博客也崇尚“环保”,建议选第二种方法。
最后,祝那些正被垃圾评论及垃圾广告所困扰的博主们成功摆脱烦恼!让那些博客评论灌水机见鬼去吧。欢迎常来牛博哄哄-NiuHH.com
» 转载请注明来源:牛博哄哄 » 《WordPress博客防止垃圾评论的2种方法》











学习了,我用akismet插件
传说插件用多了对博客会有影响,所以能不用我就尽量不用,呵呵