星期九 前天中午匆匆忙忙地加了个评论验证代码,作用是让访客在评论之前必须输入正确的简单数字计算结果才能完成评论。
之所以要加这个,它实在是无奈之举啊!我也知道加上这种验证会在访客的体验上大打折扣,但是星期九 现在每天的垃圾评论实在是太多了,我已经无力去一列一列地删除了,所以只能麻烦一下访客朋友了!
我所说的“垃圾评论”不是指那种“出于推广目的,但是评论还不是很让人无语”的评论,一般出现这种评论,我都没有删除,因为人家也不容易,关键人家评论的时候并不是恶意评论、强行推广。但是星期九遇到的真正意义上的“垃圾评论”是那种纯机器注入的评论,全TM的英文评论,具体可围观:《可恨的垃圾评论》,所以有加这个验证的必要了。

添加方法来自http://tsov.net,原文地址:http://tsov.net/manually-increase-the-wordpress-comment-arithmetic-code/,建议使用星期九这里帖的代码,因为原文出处所帖的代码是全角符号,直接使用会出现严重的问题——访客无法评论。
一、打开博客安装根目录下的wp-comments-post.php,查找if ( '' == $comment_content ),在此上面增加:
1 2 3 4 5 6 7 8 | 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 sum.') ); } } |
二、在主题的comments.php文件中找到评论表单的位置,在适当的地方添加如下代码:
1 2 3 4 5 6 7 | <?php if(!$user_ID) : ?> <?php $aaa=rand(1,9); $bbb=rand(1,9); ?> <p><label>验证码:</label><input name="aaa" value="<?php echo $aaa; ?>" type="hidden" /> <input name="bbb" value="<?php echo $bbb; ?>" type="hidden" /><?php echo $aaa; ?> + <?php echo $bbb; ?> = <input type="text" name="subab" id="subab" size="2" tabindex="5" style="width:50px" /><small>(必填)</small> </p> <?php endif; ?> |
OK了!使用两天之后,我发现这个效果还是很明显的,现在没有那些机器注入的评论了。不过,它可能同时也减少很多有效评论数量吧,一出七伤拳啊!嗯 ,我也在考虑将Akismet卸载掉。
声明:本文采用 BY-NC-SA 协议进行授权 | 星期九
原创文章转载请注明:转自《继续折腾之添加代码实现评论算术验证》
谢谢。这个很不错的。学习了!
@DH, 我用了这个后,垃圾评论几乎绝迹了,很有效的,值得一试。嗯,感觉我像个打广告的。
@Harid, 一开始我就觉得你这个很好用,但是考虑到用户体验,就没有加。。
垃圾评论一大堆,,没办法,我也搞个或者玩意儿
验正码还是影响一回复量啊,能不能总设成一个1+1?
我用的也是这个算术验证,呵呵
还是1+1简单,我就算错了几次
@yesureadmin,
,不至于吧?都是10以内的,哥说笑了,
Random Posts
Recent Posts
Recent Comments
By Plastic injection mould
By OOZJ
By Jusbe
By 互联网战
By 互联网战
By ixwebhosting
Blogroll
Categories
Tag Cloud
360 5800 Alexa C++ Chrome Cisco Dedecms Discuz Fcitx Fedora GFW Gravatar IE Linux Mobile ModelSim Music QT Quartus Shell Verilog VPN VPS Windows Wordpress XAMPP Xilinx xp 下载 垃圾评论 情感 手机 插件 星期九 注册 电子信息 程序设计 站长工具 缩略图 网络应用 考研 胡思乱想 西工大 视频 软件Meta