Intereting Posts
Удалить все пользовательские вложения Как заполнить окно раскрывающегося поля на основе предыдущего выбора? Как изменить, откуда плагин извлекает обновления? display_number отображается вне указанного диапазона Стиль WP UI в коротком кодексе – любые предложения? add_image_size () обрезается только в том случае, если ширина изображения совпадает или выше Добавление wp_ajax к теме за пределами functions.php (на определенной странице шаблона) Использование wp_category_checklist в виджетах Таксономия против статуса сообщения Попытка написать shortcode с get_post_meta, но не работает Типы пользовательских сообщений с использованием сообщений категории как отобразить выдержку последнего сообщения на главной странице? Проблема с JQuery NoConflict Как получить мета значение из всех сообщений Если я обновляю WordPress, мои пользовательские данные будут удалены из таблицы wp_users?

Пользовательский вход в ReCaptcha

Я пытаюсь добавить ReCaptcha на мою страницу входа. Я знаю, что есть много плагинов по запросу, я не могу использовать плагины. Пока что так хорошо, я могу добавить Captcha в свой логин, но не могу показать ошибки.

Я буду ошибаться, когда я введу неправильный пароль, но если я введу правильный пароль и не войду в Captcha, я не получу ошибок (что я должен получить Captcha, не заполненную ошибку). Таким образом, единственный раз, когда captcha_errors функция captcha_errors является неправильное имя пользователя / пароль.

Как получить мою регистрационную форму, чтобы проверить ReCaptcha, прежде чем проверять учетные данные для входа?

 do_action('login_head'); // this function adds captcha to the login form function addCaptcha() { if( session_id() == "" ) @session_start(); if (isset( $_SESSION["recaptcha_response_field"] )) unset( $_SESSION["recaptcha_response_field"] ); ?> <p class="cptch_block"> <div id="cap"></div> <script type='text/javascript' src='http://www.google.com/recaptcha/api/js/recaptcha_ajax.js'></script> <script type='text/javascript'> Recaptcha.create("pubk", "cap", {theme:"clean", callback: Recaptcha.focus_response_field}); </script> <noscript> <iframe src='http://www.google.com/recaptcha/api/noscript?k=pubk' height='300' width='500'></iframe> <br /> <textarea name='recaptcha_challenge_field' rows='3' cols='40'></textarea> <input type='hidden' value='manual_challenge' name='recaptcha_response_field'/> </noscript> </p> <br /> <?php return true; } function verifyCaptcha($pageid) { $result = false; if( session_id() == "" ) @session_start(); $pvk = 'prvk'; if (!empty($pvk) && isset($_POST['recaptcha_response_field'])) { if(!function_exists('recaptcha_check_answer')) { require_once 'recaptchalib.php'; } $resp = recaptcha_check_answer($pvk, $_SERVER['REMOTE_ADDR'], $_POST['recaptcha_challenge_field'], $_POST['recaptcha_response_field']); $result = $resp->is_valid; } if(!$result) return $_SERVER["REQUEST_URI"]; else return admin_url(); } // this function checks captcha posted with a login function captcha_errors( $errors ) { if ( isset( $_SESSION['cptch_error'] ) ) unset( $_SESSION['cptch_error'] ); // return $errros.'<strong>TEST</strong>'; if ("" == $_REQUEST['recaptcha_response_field'] ) { return $errors.'<strong>'. __( 'ERROR', 'captcha' ) .'</strong>: '. __( 'Please fill out The Cpatcha.', 'captcha' ); } if ( isset( $_REQUEST['recaptcha_response_field'] ) && verifyCaptcha()) { // captcha was matched } else { return $errors.'<strong>'. __( 'ERROR', 'captcha' ) .'</strong>: '. __( 'Please enter a valid CAPTCHA value.', 'captcha' ); } return( $errors ); } add_action( 'login_form', 'addCaptcha' ); add_filter( 'login_redirect', 'verifyCaptcha', 10, 3 ); add_filter( 'login_errors', captcha_errors); 

Solutions Collecting From Web of "Пользовательский вход в ReCaptcha"