WordPress运维日记-为博客注册登陆页面添加验证码(转)

2017-08-27 0 条评论 528 次阅读 1 人点赞

前言

今天发现我的站点疑似被别人挂马了,所以赶紧维护一波。

登陆页面验证码效果图:

登陆页面验证码使用说明:

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

//后台登陆数学验证码
function myplugin_add_login_fields() {
//获取两个随机数, 范围0~9
$num1=rand(0,9);
$num2=rand(0,9);
//最终网页中的具体内容
echo "<p><label for='math' class='small'>验证码</label><br /> $num1 + $num2 = ?<input type='text' name='sum' class='input' value='' size='25' tabindex='4'>"
."<input type='hidden' name='num1' value='$num1'>"
."<input type='hidden' name='num2' value='$num2'></p>";
}
add_action('login_form','myplugin_add_login_fields');
function login_val() {
$sum=$_POST['sum'];//用户提交的计算结果
switch($sum){
//得到正确的计算结果则直接跳出
case $_POST['num1']+$_POST['num2']:break;
//未填写结果时的错误讯息,可自定义修改
case null:wp_die('错误: 请输入验证码.');break;
//计算错误时的错误讯息,可自定义修改
default:wp_die('错误: 验证码错误,请重试.');
}
}
add_action('login_form_login','login_val');

 

声明与备注:

  • 部分代码转自www.qcgzxw.cn,并非本人所写,在这里只是分享。
  • 如需同时想让登陆页面与注册页面都添加数字验证,将以上2份代码全部加在functions.php即可
  • 亲测验证码输错,不能注册,不能登陆。防机器注册很有效果,也不会影响用户体验

oeone

这个人太懒什么东西都没留下

文章评论(0)