实现验证码功能方法,将以下代码添加到当前主题的 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');
}
调用代码:添加到所在主题comments.php文件内合适的位置
<?php spam_protection_math();?>(必填)