让WordPress文章评论添加验证码防止垃圾评论的解决办法图文教程

因为大家都喜欢用WordPress进行建站,但是因为开启了评论,导致大量的垃圾评论。特别是国外的一些英文评论,很多都是通过软件机器自动回复发布。本站之前已介绍了用 Akismet 插件解决《Akismet垃圾评论插件怎么启用?API Key免费申请》但是仍然容易被垃圾评论覆盖,接下来虾皮路给大家介绍让WordPress文章评论添加验证码防止垃圾评论的解决办法图文教程。不用插件,只用纯代码的方式去实现。

WordPress

1、首先打开你主题文件夹下的主题的functions.php文件 ,然后打开编辑,在文件最后放入以下代码:

//wordpress评论添加验证码
function spam_protection_math(){
$num1=rand(0,30);
$num2=rand(0,30);
echo "<label for=\"math\">请输入 <i>$num1 + $num2 = ?</i> 的计算结果:</label>\n";
echo "<input type=\"text\" name=\"sum\" class=\"text\" value=\"\" size=\"5\" tabindex=\"4\">\n";
echo "<input type=\"hidden\" name=\"num1\" value=\"$num1\">\n";
echo "<input type=\"hidden\" name=\"num2\" value=\"$num2\">";
}
function spam_protection_pre($commentdata){
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:
break;
case null:
wp_die('骚年,请先输入验证码','评论失败');
break;
default:
wp_die('骚年,你这都能算错,看来很危险哦,再算一遍吧。','评论失败');
}
return $commentdata;
}
if($comment_data['comment_type']==''){
add_filter('preprocess_comment','spam_protection_pre');
}
让WordPress文章评论添加验证码防止垃圾评论的解决办法图文教程插图1

以上代码中部分内容解释:

a、其中下列代码代表从0到30任意一个数,这时候可以根据各个人的喜好去修改。

$num1=rand(0,30);
$num2=rand(0,30);

b、验证码输入错误或者没有输入,系统都会给出提示,提示内容如下,可以自行修改。

wp_die('骚年,请先输入验证码','评论失败');
break;
default:
wp_die('骚年,你这都能算错,看来很危险哦,再算一遍吧。','评论失败');

2、修改好 functions.php文件 后,接下来打开主题文件夹下的 comments.php 文件,继续编辑,然后在相应位置添加如下代码即可:

<?php spam_protection_math();?>

因为主题不同,位置也不同,根据大家的实际情况进行修改。

 收藏 (0) 更新不易,打赏吧

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

除特别注明外,本站所有文章均基于CC-BY-NC-SA 4.0原创,转载请注明出处。
文章名称:《让WordPress文章评论添加验证码防止垃圾评论的解决办法图文教程》
文章链接:https://www.xiapilu.com/web/web-tutorial/wordpress-comment-verification-code.html
分享到: 生成海报

评论 1

评论前必须登录!

立即登录   注册

  1. #1

    这个对我帮助很大感谢您。

    huayi3年前 (2021-02-18)国内网友Internet Explorer Windows 7 登录以回复
切换注册

登录

忘记密码 ?

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活