这里,为了防止评论的滥用,我们可以在评论界面添加验证码的格式,这里加减验证码还是很简单可以实现的。
//评论添加验证码
function spam_protection_math(){
$num1=rand(0,9);
$num2=rand(0,9);
echo "<label for="\"math\"">人机认证: <i>$num1 + $num2 = ?</i> </label>\n";
echo "<input class="\"text\"" tabindex="\"4\"" name="\"sum\"" size="\"25\"" type="\"text\"" value="\"\"" />\n";
echo "<input name="\"num1\"" type="\"hidden\"" value="\"$num1\"" />\n";
echo "<input name="\"num2\"" type="\"hidden\"" value="\"$num2\"" />";
}
function spam_protection_pre($commentdata){
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:
break;
case null:
wp_die('对不起: 请输入验证码。<a>返回上一页</a>','评论失败');
break;
default:
wp_die('对不起: 验证码错误,请<a>返回</a>重试。','评论失败');
}
return $commentdata;
}
if($comment_data['comment_type']==''){
add_filter('preprocess_comment','spam_protection_pre');
这里添加到 Functions.php中。
comments.php文件中在sumit提交评论的代码前加入以下代码
<?php spam_protection_math();?>