技术成就梦想
努力展现自我

WordPress登录添加验证码(实测有效)

要为wordpress 后台登录页面添加验证码功能,可以使用以下步骤实现:

1. 添加验证码字段

将以下代码添加到你的主题的 functions.php 文件中:

function add_captcha_to_login_form() {
    $num1 = rand(1, 9);
    $num2 = rand(1, 9);
    echo "<p>
            <label for='math' class='small'>验证码: </label>
 
            <br />
            <input type='text' name='captcha' placeholder='$num1 + $num2 = ?' class='input' size='25' tabindex='4'>
            <input type='hidden' name='num1' value='$num1'>
            <input type='hidden' name='num2' value='$num2'>
          </p>";
}
add_action('login_form', 'add_captcha_to_login_form');

2. 验证用户输入的验证码

继续在 functions.php 中添加以下代码:

function validate_captcha_on_login($user, $username, $password) {
    if (isset($_POST['captcha'], $_POST['num1'], $_POST['num2'])) {
        $sum = intval($_POST['captcha']);
        $num1 = intval($_POST['num1']);
        $num2 = intval($_POST['num2']);
 
        if ($sum !== ($num1 + $num2)) {
            return new WP_Error('captcha_error', '<strong>错误</strong>: 验证码错误, 请重试.');
        }
    } else {
        return new WP_Error('captcha_error', '<strong>错误</strong>: 验证码未正确提交,请重试.');
    }
 
    return $user;
}
add_filter('authenticate', 'validate_captcha_on_login', 30, 3);

3. 测试功能

确保代码已经正确放置并清除浏览器缓存,然后尝试登录,以确认验证码功能正常工作。

赞(0) 打赏
未经允许不得转载:鸿华工作室 » WordPress登录添加验证码(实测有效)

鸿华网络工作室,收集各类技术类优秀文章,少走弯路学习

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

NAS数据存储中心鸿华在线音乐

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

微信扫一扫

登录

找回密码

注册