wordpress:
guestcomments.php
<div class="form-submit">
<input class="btn-comment" name="submit" type="submit" id="submit" tabindex="5" title="提交留言" value="提交留言">
<?php comment_id_fields(); ?>
<?php do_action('comment_form', $post->ID); ?>
</div>
functions.php
function add_security_question_fields() {
//获取两个随机数, 范围0~9
$num1=rand(0,9);
$num2=rand(0,9);
//最终网页中的具体内容
echo "<p><label for='math' class='small'>验证码:$num1 + $num2 = ? </label><input type='text' name='sum' class='input' value='' size='25'>"
."<input type='hidden' name='num1' value='$num1'>"
."<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('comment_form','add_security_question_fields');
add_action( 'comment_post', 'add_security_question_validate', 10, 3 );
function add_security_question_validate( $sanitized_user_login, $user_email, $errors) {
$sum=$_POST['sum'];//用户提交的计算结果
switch($sum){
case $_POST['num1']+$_POST['num2']:
break;
case null:
wp_die('<span style="color: red;">错误:请输入验证码!</span>');
break;
default:
wp_die('<span style="color: red;">错误:验证码错误,请重试!</span>');
}
}
add_action( 'add_security_question','comment_form' );
ajax-comment.js
jQuery(document).ready(function(jQuery) {
var $commentform = jQuery('#commentform'),
$comments = jQuery('#comments-title'),
$cancel = jQuery('#cancel-comment-reply-link'),
cancel_text = "取消回复";