WordPress博客用户注册页面添加验证码

WordPress注册用户添加验证码,我这种小博客基本很少用到给网友注册用户的,登录后台添加验证码,找回密码添加验证码文章都写了,多多源码网,也不差这个注册用户添加验证码文章了,大概差不多只需要一串代码就行了,也不用安装任何插件就能现实验证码功能,主要的目的是防止浪费主机资源和防止机器人捣蛋,今天分享7种验证码功能总有你喜欢的一种验证码。

代码部署

登陆你的后台管理,选择【外观】–【编辑】–【模板函数 (functions.php)】直接添加下面全部代码:【?>前面】即可。

第一种:随机加法验证码演示图:【跳转版】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机数字验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第一种
function loper_register_english_figures() {
# 获取两个随机数, 范围0~99
$num1=rand(0,99);
$num2=rand(0,99);
echo "<p>
<label for='math' class='small'>验证码:$num1 + $num2 = ? </label>
<input id='math' type='text' name='sum' class='input' size='25'>
<input type='hidden' name='num1' value='$num1'>
<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation() {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:break;
case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
}
add_action( 'register_post', 'loper_register_calculation');

第二种:随机加法验证码演示图:【显示框里】【跳转版】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机数字验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第二种
function loper_register_english_figures() {
# 获取两个随机数, 范围0~99
$num1=rand(0,99);
$num2=rand(0,99);
echo "<p>
<label for='math' class='small'>验证码</label>
<input id='math' type='text' name='sum' class='input' size='25' placeholder='$num1 + $num2 = ? '>
<input type='hidden' name='num1' value='$num1'>
<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation() {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:break;
case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
}
add_action( 'register_post', 'loper_register_calculation');

第三种:随机混合数验证码演示图:【跳转版】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机混合数验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第三种
function loper_register_english_figures() {
# 获取英语和数字随机数, 范围0~99,目前是0,5【5位数】
$num1=substr(md5(mt_rand(0,99)),0,5);
echo "<p>
<label for='math' class='small'>验证码:$num1 </label>
<input id='math' type='text' name='sum' class='input' size='25'>
<input type='hidden' name='num1' value='$num1'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation() {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']:break;
case null:wp_die( __( '错误:请填入验证码!' ), '', array( 'back_link'=>true ) );break;
default:wp_die( __( '错误:验证码不正确!' ), '', array( 'back_link'=>true ) );}
}
add_action( 'register_post', 'loper_register_calculation');

第四种:随机加法验证码演示图:【提示板】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机数字验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第四种
function loper_register_english_figures() {
# 获取两个随机数, 范围0~99
$num1=rand(0,99);
$num2=rand(0,99);
echo "<p>
<label for='math' class='small'>验证码</label>
<input id='math' type='text' name='sum' class='input' size='25' placeholder='$num1 + $num2 = ? '>
<input type='hidden' name='num1' value='$num1'>
<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation($login, $email, $errors) {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:break;
case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
}
add_action( 'register_post', 'loper_register_calculation', 9, 9);

第五种:随机加法验证码演示图【提示板】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机数字验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第五种
function loper_register_english_figures() {
# 获取两个随机数, 范围0~99
$num1=rand(0,99);
$num2=rand(0,99);
echo "<p>
<label for='math' class='small'>验证码:$num1 + $num2 = ? </label>
<input id='math' type='text' name='sum' class='input' size='25'>
<input type='hidden' name='num1' value='$num1'>
<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation($login, $email, $errors) {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']+$_POST['num2']:break;
case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
}
add_action( 'register_post', 'loper_register_calculation', 9, 9);

第六种:随机混合数验证码演示图:【提示板】

把以下全部代码丢进模板函数 (functions.php)!

/*-----------------------------------------------------------------------------------*/
/* WordPress注册用户随机混合数验证码
/*-----------------------------------------------------------------------------------*/
# 注册用户添加验证码第六种
function loper_register_english_figures() {
# 获取英语和数字随机数, 范围0~99,目前是0,5【5位数】
$num1=substr(md5(mt_rand(0,99)),0,5);
echo "<p>
<label for='math' class='small'>验证码:$num1 </label>
<input id='math' type='text' name='sum' class='input' size='25'>
<input type='hidden' name='num1' value='$num1'></p>";
}
add_action('register_form','loper_register_english_figures');
# 判断验证码是否空白和错误
function loper_register_calculation($login, $email, $errors) {
$sum=$_POST['sum'];
switch($sum){
case $_POST['num1']:break;
case null:$errors->add( 'zlinet', "<strong>错误</strong>:请输入验证码!" ); break;
default:$errors->add( 'zlinet', "<strong>错误</strong>:验证码不正确!" );}
}
add_action( 'register_post', 'loper_register_calculation', 9, 9);

第七种:自定义问题答案验证演示图:【提示板】

把以下全部代码丢进模板函数 (functions.php)!

/*注册验证*/
function rand_reg_question(){
$register_number=rand(0,1); // 设置随机数的返回范围
$_SESSION['register_number']=$register_number;
}
add_action('login_head','rand_reg_question');

global $register_questions;
global $register_answers;
// 添加问题数组
$register_questions=array('中国首都在哪里?','1+1+1等于多少?');
// 添加答案数组(与上面的问题对应)
$register_answers=array('北京','3');

add_action( 'register_form', 'add_security_question' );
function add_security_question() {
global $register_questions;
$register_number=$_SESSION['register_number'];
?>
<p>
<label><?php echo $register_questions[$register_number];?><br />
<input type="text" name="user_proof" id="user_proof" class="input" size="25" tabindex="20" />
</label>
</p>
<?php }

add_action( 'register_post', 'add_security_question_validate', 10, 3 );
function add_security_question_validate( $sanitized_user_login, $user_email, $errors) {
global $register_answers;
$register_number=$_SESSION['register_number'];
if (!isset($_POST[ 'user_proof' ]) || empty($_POST[ 'user_proof' ])) {
return $errors->add( 'proofempty', '<strong>错误</strong>: 您还没有回答问题。' );
} elseif ( strtolower( $_POST[ 'user_proof' ] ) != $register_answers[$register_number] ) {
return $errors->add( 'prooffail', '<strong>错误</strong>: 您的回答不正确。' );
}
}

 

 


多多源码 » WordPress博客用户注册页面添加验证码

发表回复

鼠标悬停颜色改变 实例 css5.com.cn