外贸营销
wordpress无插件纯代码实现注册验证 拒绝恶意注册
最近深圳外贸建站进行了一次改版,改版后使用了TML用户自定义登录注册插件,但是发现一个很严重的问题,那就是突然开始出现很多恶意注册用户,搞的是很烦人,所以就想着添加一个注册时的验证,到网上搜到很多,比如使用极验的方法,但是还要注册账号什么的,比较麻烦,不太想用。那就继续找,终于发现一个纯代码实现的方法。具体如下:
把下面这段代码添加到自己的functions.php,其中的验证问题我使用了本站的域名“www.seo628.com”,你也可以改成其他内容。注意改的时候,代码第四行和倒数第四行都有,要改两处哦
add_action( 'register_form', 'add_security_question' );function add_security_question() { ?> <p> <label><?php _e('请输入本站域名:www.seo628.com') ?><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) { // 如果没有回答 if (!isset($_POST[ 'user_proof' ]) || empty($_POST[ 'user_proof' ])) { return $errors->add( 'proofempty', '<strong>错误</strong>: 您还没有回答问题。' ); // 如果答案不正确 } elseif ( strtolower( $_POST[ 'user_proof' ] ) != 'www.seo628.com' ) { return $errors->add( 'prooffail', '<strong>错误</strong>: 您的回答不正确。' ); }}
标签