首 页 » 网络杂谈 » Wordpress评论添加算术验证码,防止垃圾评论

Wordpress评论添加算术验证码,防止垃圾评论

2014-04-19 | 浏览人数: 3,621次 | 分类: 网络杂谈 | 查看评论 发表评论

现在wordpress垃圾评论太疯狂了,几天就有几万条了。前几天加了屏蔽IP的方法,不过效果不太明显。今天找到一个新的算术验证码的方法,转载如下。

不罗嗦了,直接贴出代码:
(一)在主题目录的functions.php添加如下代码:

  1. //算术验证码by vfhky
  2. function spam_provent_math(){
  3. $a=rand(5,15);
  4. $b=rand(5,15);
  5. echo "<input type='text' name='sum' id='sum' size='22' tabindex='3' value='动手又动脑,哦也 !' onfocus='if (this.value != "") {this.value = "";}' onblur='if (this.value == "") {this.value = "动手又动脑,哦也 !";}' /> = $a + $b (<font color='#0088DD'>防止机器人评论</font>)" ."<input type='hidden' name='a' value='$a'/>" ."<input type='hidden' name='b' value='$b'/>";
  6. }
  7. function spam_provent_pre($spam_result){
  8. $sum=$_POST['sum'];
  9. switch($sum){
  10. case $_POST['a']+$_POST['b']:break;
  11. case null:wp_die('亲,算个结果撒');break;
  12. default:wp_die('算错啦⊙﹏⊙b汗');
  13. }
  14. return $spam_result;
  15. }
  16. //注册用户or管理员则不需要验证
  17. if(!is_user_logged_in() && $comment_data['comment_type']==''){
  18. add_filter('preprocess_comment','spam_provent_pre');
  19. }


(二)在主题目录下的comments.php(不同的主题可能评论框的位置不同,有的主题可能在functions.php里面)中调用上述代码:

  1. <?php if(!isset($_COOKIE['comment_author_email_'.COOKIEHASH]))spam_provent_math();?>


效果如下图示:

wordpress算术验证码验证码

原创文章如转载,请注明:转载自深度VPS [ http://www.deepvps.com ]
[复制本文链接发送给您的好友]
  • 上一篇:
  • 下一篇:
  • 日志信息 »

    该日志于2014-04-19 17:53由 deepvps 发表在网络杂谈分类下, 你可以发表评论。除了可以将这个日志以保留源地址及作者的情况下引用到你的网站或博客,还可以通过RSS 2.0订阅这个日志的所有评论。

    相关日志 »

    沙发为空,还不快抢?[点此发言]

    发表评论 »

    = 11 + 10 (防止机器人评论)

     疑问 冷笑 悲伤 坏蛋 感叹 微笑 脸红 大笑 吃惊 惊讶 困惑 酷 大声笑 恼火 古怪 转眼睛 给眼色 好主意 箭头 一般 哭了 绿人