• 正文概述
  • 评价建议
  • 对于搜索接口开放的网站,不良分子都可以通过“搜索”的方式进行攻击。这个不仅限于wordpress,其他CMS和自定义网站也可能受到类似的攻击,轻则服务器瘫痪,重则网站被K。

    效果图

    代码添加方法

    进入WordPress后台 > 外观 > 主题编辑器 > 点击”functions.php” > 粘贴代码到文件内容中 > 最后“更新文章”。

    代码

    这里面的 $num1 = rand(1,50); $num2 = rand(1,50);部分可以设置简单点,数字1到5就够了

        function esc_search_captcha( $query, $error = true ) {
          if ( is_search() && !is_admin() ) {
            if ( ! isset( $_COOKIE['esc_search_captcha'] ) ) {
              $query->is_search = false;
              $query->query_vars['s'] = false;
              $query->query['s'] = false;
     
              if ( $error == true ){
                //$query->is_404 = true;
                if ( isset( $_POST['result'] ) ) {
                  if ( $_POST['result'] == $_COOKIE['result'] ) {
                    $_COOKIE['esc_search_captcha'] = 1;
                    setcookie('esc_search_captcha',1,0,'/');
                    echo '<script>location.reload();</script>';
                  }
                }
     
                $num1 = rand(1,50);
                $num2 = rand(1,50);
                $result = $num1+$num2;
                $_COOKIE['result'] = $result;
                setcookie('result',urldecode($result),0,'/');
                ?>
     
                <HTML>
                <head>
                <meta charset="UTF-8">
                <title>人机验证</title>
                <style>
                body{color: #333;text-align: center;font-size: 16px;}
                .erphp-search-captcha{margin: 50px auto 15px;max-width: 250px;width: 100%;padding: 40px 20px;border: 1px solid #ddd;text-align: center;border-radius: 5px;}
                .erphp-search-captcha form{margin: 0}
                .erphp-search-captcha input{border: none;border-bottom: 1px solid #666;width: 50px;text-align: center;font-size: 16px;}
                .erphp-search-captcha input:focus{outline: none;}
                .erphp-search-captcha button{border: none;background: transparent;color: #ff5f33;cursor: pointer;}
                .erphp-search-captcha button:focus{outline: none;}
                a{color: #000;font-size: 12px;}
                </style>
                </head>
                <body>
                <div class="erphp-search-captcha">
                <form action="" method="post"><?php echo $num1;?> + <?php echo $num2;?> = <input type="text" name="result" required /> <button type="submit">验证</button></form>
                </div>
                <a href="<?php echo home_url();?>">返回首页</a>
                </body>
                </html>
                <?php
                exit;
              }
            }
          }
        }
        add_action( 'parse_query', 'esc_search_captcha' );
    资源下载此资源仅限VIP下载,请先
    客服QQ:1140845961
    本资源网每日更新精品源码,宁缺毋滥,只做能用的精品源码。源码大部分为购买淘宝互站上的源码,少部分来自其他论坛的代理源码。均为精品!!目前源码数量还少,VIP价格较低,早上车早赚到!!!源码搭建教程详情请查看:https://yigexueshe.com
    黑马源码资源网 » WordPress搜索结果页面人机验证代码,算术验证

    开通会员

    QQ联系 购买卡密

    copy fly

    咨询请飞机或邮箱

    欢迎来到黑马源码网,搭建教程请移步:https://yigexueshe.com 若长时间未回复可联系QQ:2212190958/1140845961。本站无在线支付,开通会员请联系飞机/邮箱/QQ,告知管理员账号并开通,感谢支持!