Подключение Google reCAPTCHA в WordPress: подробная инструкция
Google reCAPTCHA — это бесплатный сервис от Google, который помогает защитить сайт от спама, ботов и автоматических регистраций. Чаще всего reCAPTCHA используется для защиты форм обратной связи, комментариев, регистрации пользователей и страниц входа в WordPress.
Шаг 1. Зарегистрируйте сайт в Google reCAPTCHA
Перейдите на страницу Google reCAPTCHA:
https://www.google.com/recaptcha/admin
Авторизуйтесь в аккаунте Google и нажмите кнопку создания нового сайта.
Заполните следующие поля:
- Label — название проекта.
- reCAPTCHA type — выберите версию капчи.
- Domains — укажите домен сайта без https://.
- Owners — список владельцев проекта.
Для WordPress обычно используют:
- reCAPTCHA v2 («Я не робот»);
- reCAPTCHA v3 (невидимая защита).
После регистрации Google выдаст два ключа:
Site Key Secret Key
Сохраните их — они понадобятся для настройки сайта.
Шаг 2. Подключение reCAPTCHA через плагин
Самый простой способ — использовать готовый плагин.
Популярные решения:
- Advanced Google reCAPTCHA;
- Simple Google reCAPTCHA;
- WPForms;
- Contact Form 7;
- Login No Captcha reCAPTCHA.
Установите выбранный плагин через:
Плагины → Добавить новый
После активации откройте настройки плагина и вставьте:
Site Key Secret Key
Сохраните изменения.
Шаг 3. Подключение reCAPTCHA v2 вручную
Если вы разрабатываете собственную тему или форму, можно подключить капчу напрямую.
Добавьте перед закрывающим тегом </head>:
<script src="https://www.google.com/recaptcha/api.js" async defer></script>
Затем добавьте блок капчи в форму:
<form method="post"> <input type="text" name="name"> <div class="g-recaptcha" data-sitekey="ВАШ_SITE_KEY"> </div> <button type="submit"> Отправить </button> </form>
После этого на странице появится стандартный чекбокс «Я не робот».
Шаг 4. Проверка reCAPTCHA на сервере
Недостаточно вывести капчу на страницу. Необходимо проверить ответ Google на сервере.
Пример PHP-кода:
$secret = 'ВАШ_SECRET_KEY'; $response = $_POST['g-recaptcha-response']; $verify = file_get_contents( 'https://www.google.com/recaptcha/api/siteverify?secret=' . $secret . '&response=' . $response ); $result = json_decode($verify); if ($result->success) { echo 'Проверка пройдена'; } else { echo 'Ошибка проверки'; }
Только после успешной проверки следует обрабатывать форму.
Шаг 5. Подключение reCAPTCHA к комментариям WordPress
Чтобы добавить защиту в форму комментариев, используйте хук WordPress.
Добавьте код в functions.php:
function add_recaptcha_comment_form() { ?> <div class="g-recaptcha" data-sitekey="ВАШ_SITE_KEY"> </div> <?php } add_action( 'comment_form_after_fields', 'add_recaptcha_comment_form' ); add_action( 'comment_form_logged_in_after', 'add_recaptcha_comment_form' );
Теперь капча будет отображаться в форме комментариев.
Шаг 6. Проверка комментария перед отправкой
Чтобы пользователь не мог отправить комментарий без прохождения проверки, добавьте серверную валидацию.
function verify_comment_recaptcha($commentdata) { if ( empty( $_POST['g-recaptcha-response'] ) ) { wp_die( 'Подтвердите, что вы не робот.' ); } return $commentdata; } add_filter( 'preprocess_comment', 'verify_comment_recaptcha' );
Шаг 7. Подключение reCAPTCHA к странице входа WordPress
Для защиты страницы авторизации используйте следующий код.
Вывод капчи:
function login_recaptcha() { echo ' '; } add_action( 'login_form', 'login_recaptcha' );
Подключение скрипта:
function login_recaptcha_script() { wp_enqueue_script( 'recaptcha', 'https://www.google.com/recaptcha/api.js' ); } add_action( 'login_enqueue_scripts', 'login_recaptcha_script' );
Подключение reCAPTCHA v3
Версия v3 работает незаметно для пользователя и присваивает каждому действию рейтинг доверия.
Подключение JavaScript:
<script src=" https://www.google.com/recaptcha/api.js?render=SITE_KEY" ></script>
Получение токена:
grecaptcha.ready(function() { grecaptcha.execute( 'SITE_KEY', {action: 'submit'} ).then(function(token) { document.getElementById( 'g-token' ).value = token; }); });
В форме создается скрытое поле:
<input type="hidden" id="g-token" name="g-token">
Затем токен проверяется через API Google на сервере.
Как проверить работу reCAPTCHA
- Откройте страницу с формой.
- Убедитесь, что капча отображается.
- Попробуйте отправить форму без прохождения проверки.
- Проверьте успешную отправку после подтверждения.
- Убедитесь в отсутствии ошибок JavaScript в консоли браузера.
Частые ошибки
- Указан неправильный домен в настройках Google.
- Перепутаны Site Key и Secret Key.
- Отсутствует серверная проверка.
- Не подключен JavaScript API.
- Используется HTTP вместо HTTPS.
- Кэш сайта не обновлен после настройки.
Что выбрать: v2 или v3
| Версия | Преимущества |
|---|---|
| reCAPTCHA v2 | Простая настройка и высокая надежность |
| reCAPTCHA v3 | Не требует действий пользователя |
Для большинства сайтов WordPress оптимальным вариантом считается reCAPTCHA v2. Для интернет-магазинов, корпоративных сайтов и крупных проектов чаще используют reCAPTCHA v3 в сочетании с дополнительными средствами антиспам-защиты.


