专栏首页空木白博客WordPress后台添加登录算术验证码

WordPress后台添加登录算术验证码

给网站登录添加验证码功能在一定程度上可以有效减少机器人软件暴力破解暴力登录,对于wordpress程序可以有很多相关插件可以实现,不过这么简单的功能其实没有必要安装一个插件,通过简单的代码也很容易实现。

把下面的代码添加到当前主题的functions.php文件:

function login_val_fields() {
  //获取两个随机数, 范围0~9
  $num1 = rand(0,9);
  $num2 = rand(0,9);
  echo "<p><label for='math' class='small'>验证码</label> $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','login_val_fields');
 
function login_val() {
  if(isset($_POST['sum'])){
    //获取用户提交的计算结果
    $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');

原文链接:https://wuzuhua.cn/2019/02/17/htsu.html

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 日本最强图片压缩软件ShukuSen–Panasonic内部专用

    一款日本的图片压缩软件批量缩小图片工具,它可以帮您实现在保持图片原来大小的前提下对图片进行批量缩小!无需安装即可使用!

    空木白博客
  • LoveWall v2.0Pro-社区型校园表白墙

    LoveWall V2.0Pro,顾名思义,其实就是表白墙。一个接近于社区类型的表白墙,LoveWall,顾名思义,其实就是表白墙。 一生那么长,只为遇见你!

    空木白博客
  • WordPress 后台代码禁用自动更新提醒​​

    该功用能够主动的检测 WordPress 程序、你安装的主题、你安装的插件的新的版别并在后台提示管理员更新。更新费事且新的版别还或许发生一些不兼容问题.网站基本...

    空木白博客
  • JavaScript之对象赋值(浅谈一道面试题)

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/articl...

    大黄大黄大黄
  • 聊聊运维(2)公开运维技术分享的一些经验

    首先,说明下,我不是技术分享高手,分享了次数比较多,有点心得;另外,听的分享多了,对好坏也有一些感受。

    力哥聊运维与云计算
  • Flutter Widgets 之 ShaderMask

    ShaderMask可以让我们将Shader用于任何一个控件上,比如在Text上使用渐变就可以使用ShaderMask来实现:

    老孟Flutter
  • 0673-6.2.0-通过Nginx获取CDSW的登录信息(续)

    在上一篇文章《6.2.0-通过Nginx获取CDSW的登录信息》中,通过Nginx的配置捕获了用户登陆相关的一些信息,比如登陆成功或失败、登陆时间、用户名等等。...

    Fayson
  • Fiddler抓包7-post请求(json)

    前言 上一篇讲过get请求的参数都在url里,post请求相对于get请求多了个body部分,本篇就详细讲解下body部分参数的几种形式。 一、body数据类...

    上海-悠悠
  • Altium Dsigner18——PCB与原理图交互式布局设计

    Altium 提供了一个交互式布局的功能,我们在利用这个命令的时候我们在原理图中选中器件的时候,在 PCB 中同样的会被选中,这样可以大大节省我们分模块设计时,...

    Winter_world
  • 《手把手教你》系列练习篇之2-python+ selenium自动化测试(详细教程)

    今天我们还是继续练习练习基本功,各位小伙伴要耐住住性子,要耐得住寂寞啊,不要急躁,后面你会感谢你在前边的不断练习的。到后面也是检验你前边的学习成果的一次很好...

    北京-宏哥

扫码关注云+社区

领取腾讯云代金券