Лучшие плагины для капчи в WordPress. No CAPTCHA reCAPTCHA русская версия Поставить капчу на вордпресс

Привет, читатель! До недавнего времени на моем блоге работал плагин Math Comment Spam Protection, реализующий математическую капчу для WordPress. Надо сказать, плагин очень надежный и защищает комментарии не только от спама, но и от людей. Недавно на почту пришли пару писем, написанных через форму обратной связи с жалобами на капчу в комментариях. У пользователей спрашивалось, сколько будет 7+10? Казалось бы 17, но нет! Капча WordPress отвергала этот вариант и не пропускала комментарий.

Воссоздать условия, при которых капча переставала корректно работать у меня не получилось, поэтому и не получилось ее починить. Оставался только один вариант — отказаться от Math Comment Spam Protection и начать поиск новой защиты от спама. Об этом сегодня и поговорим.

Плагины капчи для комментариев WordPress

1. DCaptcha — именно эту капчу я первой добавил на свой блог сразу после . Очень простая капча, которая сводится к тому, что человек должен поставит галочку напротив фразы «Это не спам». Легче только полное отсутствие капчи, но об этом позже. К сожалению, со временем стал просачиваться спам. Не скажу, что по много, но все равно не приятно.

Установка DCaptcha в WordPress:

  • Скачайте последнюю версию плагина с сайта разработчика.
  • Распакуйте архив в текущий каталог и загрузите полученную папку на сервер в директорию wp-content/plugins/, используя .
  • Зайдите в админку WordPress и в разделе «Плагины» активируйте DCaptcha.
  • Установите права 777 на каталог /wp-content/plugins/dimoning.ru-captcha/num на сервере, используя все тот же ftp клиент FileZilla.
  • Запустите браузер и в адресной строке укажите следующее: http://vash_site.ru/wp-content/plugins/dimoning.ru-captcha/install.php (конечно, вместо vash_site.ru подставьте адрес своего сайта), нажмите Enter.
  • Все, плагин DCaptcha готов к работе, и капча автоматически появится под формой комментариев.

Стандартную надпись «Это не спам» можно поменять. Для это следует открыть на редактирование файл /wp-content/plugins/dimoning.ru-captcha/dimoning.ru-captcha.php. Используя стандартный поиск (ctrl +f), найдите строчку

Замените текст на любой другой. Кроме этого, к нему можно добавить стили, чтобы выделить и сделать более заметным для пользователей.

— одна из лучших символьных капчей для WordPress. Выглядит следующим образом:

Как видите, распознать символы для человека не составит труда. В чем преимущества Captcha Code:

  • Очень простая установка капчи: скачиваем плагин Captcha Code , загружаем на сервер и активируем через админку WP. В настройках галочками отмечаем, где будет использоваться капча — на страницах Входа, Регистрации и Восстановления пароля, в форме комментариев. Никакого дополнительного кода в шаблоны используемой темы WP добавлять не надо.
  • Настроек немного и все они на русском языке.
  • Регулируемая сложность капчи — устанавливается количество символов и какого рода они (строчные и заглавные буквы, цифры).

3. WP-reCAPTCHA — капча от Google. Очень надежная, но очень сложная. Отпугнет не только ботов, но и всех пользователей. Хотя, она встречается на многих сайтах в интернете, поэтому лично я к ней уже привык. Выглядит следующим образом:

Для работы плагина следует зарегистрироваться на сервисе www.google.com/recaptcha и получить приватный и публичный ключи. Заметьте, что для это необходимо иметь аккаунт на Google. Создать его можно . Это не займет много времени.

Получить заветные ключи очень просто, достаточно сделать три небольших шага:

1. Используем кнопку «USE reCAPTCHA ON YOUR SITE» для начала регистрации.

2. На следующей странице жмем на кнопку «Sing up Now!».

3. Указываем адрес своего блога и генерируем ключи, нажатием кнопку «Create key». Можно так же поставить галочку напротив «Enable this key on all domains (global key)», это позволит использовать полученные ключи на всех сайтах, а не только на одном указанном.

4. — не совсем стандартная капча, представляет собой простую логическую задачу — все картинки нужно поставить вертикально.

Устанавливается плагин стандартно. Единственным условием для работы капчи является наличие в шаблоне comments.php используемой следующей строчки кода:

ID ) ; ?>

Именно к ней капча и крепится, поэтому поменяв ее местоположение в шаблоне, вы поменяете место отображения капчи в форме составления комментария. Если капча все равно не отображается, следует выставить на папку с картинками права 777.

К сожалению, плагин придется русифицировать в ручную, хотя это не должно занять много времени. Откройте на редактирование файл плагина not-captcha.php и замените английские выражения на аналогичные русские.

5. — еще одна альтернативная капча с картинками, только в ней необходимо выбрать изображение, соответствующее задаваемому вопросу.

Плагин поддерживает как английский, так и русский язык, что является несомненным плюсом. После активации плагина, капча в комментарии WordPress добавляется автоматически. Если этого не произошло, то в настройках CheckBot, в пункте «The method of connecting plugin» выберете «Manual». В шаблон comments.php, в то место, где хотите видеть капчу, добавьте следующую строчку кода:

Лично меня капчи с картинками жутко раздражают, гораздо терпимее отношусь к стандартным капчам, где нужно вводить символы с изображения.

Плагин Captcha — по праву можно назвать лучшим антиспам фильтром для WordPress. Минимум настроек, максимум защиты. Используется, что соответствует названия самого плагина, капча. Так часто любимая Гуглом или Яндексом, если вдруг у них закралось подозрение на нехарактерные (злые?) действия пользователя …

Скачать и установить:

  • Через админ панель: Плагины -> Добавить новый: Captcha (установить, активировать);
  • Или скачать: С оф. сайта — (переместить и разархивировать в Ваш_сайт/wp-content/plugins )

О плагине Captcha. Описание

Зачем некоторые подозрительные личности спамят — оставим вопрос для других. Но спам (инфо хлам в комментариях вашего блога, с ссылкой в непонятном направлении) будет постоянно стучаться к вам.

Можно поставить классическую связку: Akismet (постоянно обновляемая база данных спамеров, если где-то определенный адрес посчитали спамным, тут же его вносят в реестр) и Antispam Bee (плагин отслеживает характерные действия спам бота и блокирует его).

Но на практике, в чем вы сами можете убедиться, если поставите данные плагины: спам проходит. На посещаемость более 1000 ч/с до 15 сообщений. Да и понятно почему: спам боты переезжают на новые адреса и придумывают новые способы, как симулировать живого человека.

Это раз, что работают нормально, но недостаточно хорошо. И два — нагрузка на хостинг. Судите сами: Akismet нужно постоянно обновляться, а это лишние операции, выполнение функций, что и грузят ЦП хоста. Antispam Bee — ситуация подобная, хотя уже не помню насколько от «тяжёлый».

Вот, если бы был анти спам плагин для Вордпресс полегче, попроще и чтоб работал на все 100% (99%). И со временем я нашел его: .

Мощность данного фильтра — в лени большинства спамеров. Как правило, мусорят боты, вручную, через ввод капчи данным действием будут заниматься единицы, если вообще будут.

При наличии настройки самого ВП: Настройки -> Обсуждение -> Перед появлением комментария: Комментарий должен быть одобрен вручную . Защита на все 100%. Но в отличии от связки Akismet + Antispam Bee , на проверку попадают только от живых людей, спам ботных нет.

Еще добавлю. Что я пробовал и экспериментировал по разному со всеми этими плагинами. И скажу уверенно: можете сносить Akismet + Antispam Bee и им подобные, плагина Captcha для защиты от спама (плюс выше упомянутая настройка) — достаточно! (И не грузит хостинг).

Недостатки Captcha

В тоже время выявил пару недостатков: визуального и функционального характера.

  • Не пропускает некоторые почтовики . Так у меня одно время настойчиво не хотел пропускать адреса эл. почты с сервиса i.ua (недавно с Яндекс почты). Но со временем, после обновления — все было хорошо.
  • Часто визуально не гармонирует с шаблоном, с полем комментария. «Лечиться», но правит шаблон (особенно, если он часто любит обновляться) — надоедает.

Настройки Captcha

Итак, скачали и установили, активировали …

В меню админ част ВП появится:

Пройдем во вкладку с одноименным названием

Так вот, все на русском и понятном, кто этот самый русский знает. Я убираю только галочку с (*), не люблю умножать. Все остальное — оставляю, как есть.

Довольно неплохо. Но такая радужная картина может быть только на данном шаблоне. Т.е., как только установите данный плагин — проверьте, чтоб он действительно работал (вернее не запрещал комментарий), и то, как он выглядит.

Установка reCAPTCHA на сайт делится на 3 этапа:

  1. Регистрация и получение API key.
  2. Интеграция на стороне клиента.
  3. Интеграция на стороне сервера.

В данной статье мы рассмотрим процесс добавления Google reCAPTCHA в стандартную форму комментариев WordPress. Если ваш сайт работает под управлением другой CMS, рекомендую воспользоваться официальным руководством от Google .

Регистрация и получение API key

После авторизации в аккаунте Google, переходим на главную страницу Google reCAPTCHA и жмем на кнопку «Get reCAPTCHA».


Google reCAPTHCA — добавление нового сайта

После регистрации мы получим два ключа:

  1. Ключ сайта (Site key) – используется в открытом виде как идентификатор.
  2. Секретный ключ (Secret key) – используется на стороне сервера для связи с Google.

На этом подготовка к работе завершена.

Интеграция на стороне клиента

Интеграция Google reCAPTCHA на стороне клиента заключается в добавлении HTML-кода в шаблон сайта. Сделать это можно разными способами, но мы рассмотрим только наиболее правильный. Его суть заключается в использовании специализированных функций WordPress. При этом весь код добавляется в файл functions.php, не затрагивая других файлов, в частности файлов движка сайта.

Всего нужно выполнить 2 действия:

  1. Подключить скрипт reCAPTHCA api.js
  2. Добавить HTML-код блока reCAPTCHA.

Подключение reCAPTCHA api.js

Подключение нового скрипта в WordPress сводится к трем операциям:

  1. Регистрации скрипта при помощи функции wp_register_script().
  2. Инициализации скрипта при помощи функции wp_enqueue_script().
  3. Привязке функций к событию wp_enqueue_scripts при помощи функции add_action(). Для этого функции wp_register_script() и wp_enqueue_script() помещаются в еще одну функцию, которая вызывается в add_action().
add_action("wp_enqueue_scripts", "add_recaptcha_js", 5, 1);
function add_recaptcha_js() {
// Регистрация reCAPTHCA api.js, version - null, in footer - false
wp_register_script("recaptcha", "https://www.google.com/recaptcha/api.js?hl=ru", array(), null, false);
// Подключение reCAPTHCA api.js
wp_enqueue_script("recaptcha");
}

Добавление HTML-кода блока Google reCAPTCHA

В данном примере мы добавим код блока Google reCAPTCHA в конец стандартной формы комментирования WordPress, непосредственно перед кнопкой отправки. Для этого используем специально предназначенный для этих целей хук comment_form. При этом блок будет отображаться только неавторизованным пользователям.

Add_action("comment_form_after_fields", "recaptchadiv");
function recaptchadiv($post_id) {
global $user_ID;

if ($user_ID) {
return $post_id;
}
echo "

";
return $post_id;
}

Не забываем заменить site_key на свой ключ.

Интеграция на стороне сервера

Интеграция Google reCAPTCHA на стороне сервера заключается в использовании функции проверки ответа сервера Google на этапе предварительной обработки данных. Это необходимо для того, чтобы прервать выполнение операции и вывести сообщение об ошибке в случае отрицательного ответа сервера.

Таким образом, для защиты комментариев WordPress нам потребуется две функции:

  1. Функция проверки ответа сервера Google.
  2. Функция предварительной обработки данных комментария.

Как и в случае интеграции на стороне клиента, весь код добавляется в файл functions.php.

Функция проверки ответа сервера Google reCAPTCHA

function verify_recaptcha_response() {
$recaptcha_secret_key = "secret_key";
$recaptcha_site_key = "site_key";
if (isset ($_POST["g-recaptcha-response"])) {
$captcha_response = $_POST["g-recaptcha-response"];
} else {
return false;
}
// Verify the captcha response from Google
$response = wp_remote_post(
"https://www.google.com/recaptcha/api/siteverify",
array(
"body" => array(
"secret" => $recaptcha_secret_key,
"response" => $captcha_response
)
);
$success = false;
if ($response && is_array($response)) {
$decoded_response = json_decode($response["body"]);
$success = $decoded_response->success;
}
return $success;
}

Не забываем заменить secret_key и site_key на соответствующие значения. Поскольку это пример, то значения задаются статично. Более правильным было бы сохранить ключи в настройках WordPress, как это будет сделано в плагине, но это немного усложнит код.

Функция предварительной обработки комментария

Завершающим этапом является написание функции предварительной проверки данных комментария и ее привязка к событию preprocess_comment.

Add_action("preprocess_comment", "preprocess_comment_cb");
function preprocess_comment_cb($commentdata) {
global $user_ID;
if ($user_ID) {
return $commentdata;
}
if (! verify_recaptcha_response()) {
echo "

Вы не прошли защиту от спама Google reCAPTCHA. Вернитесь на предыдущую страницу и повторите попытку.";
exit;
}
return $commentdata;
}

Таким образом, если в процессе комментирования пользователь не пройдет проверку Google reCAPTHCA, то ему выведется сообщение со ссылкой на предыдущую страницу. При этом после перехода по ссылке значения формы останутся заполненными.

Плагин защиты комментариев от спама

Для тех, кто любит простые решения, я написал плагин для защиты комментариев WordPress от спама при помощи Google reCAPTCHA. Для его использования вам необходимо:

  1. Установить плагин.
  2. Ввести ключи в настройках WordPress.

Ключи необходимо вводить на главной странице настроек WordPress (Меню -> Настройки). Поля станут доступны внизу страницы настроек сразу после активации плагина.


Если ключи не будут введены, то защита отключится без каких-либо ошибок или последствий для работы сайта.

Для придания отступов и других стилей, добавьте в файл style.css правило для класса g-recaptcha.

G-recaptcha {
}

Заключение

Использование Google reCAPTCHA в комментариях позволит избавится от автоматически распространяемого спама и значительно снизит нагрузку на базу данных сайта. В свою очередь, подключение плагина Akismet защитит вас от спама, распространяемого вручную. Таким образом, рекомендую использовать Google reCAPTCHA в связке с плагином Akismet. Это гарантирует практически 100% защиту от спама, за исключением редких случаев «хитрого спама».

На этом статья про установку Google reCAPTHCA подошла к концу. Если у Вас остались какие-то вопросы или пожелания, вы всегда можете оставить свой комментарий к статье.

Спам-регистрации могут стать головной болью для сайтов с открытой регистрацией. Одним из способов избежать этого, использовать CAPTCHA, которая эффективно блокирует спам-ботов как на странице входа, так и на странице регистрации. В сегодняшней статье мы покажем вам как добавить капчу в форму страниц входа и регистрации в WordPress.

Первым делом вам необходимо установить и активировать плагин Better WordPress reCAPTCHA . После активации плагин добавит новый элемент меню под названием BWP reCAPTв вашу административную панель. Клик по нему переместит вас на страницу настроек плагина.

Вас попросят указать public и private ключи API для использования Google recaptcha API. Для того, чтобы получить эти ключи, вам необходимо перейти на сайт reCAPTCHA и кликнуть на кнопку «Get reCAPTCHA».

На следующей странице нужно нажать на кнопку Signup или Sign in и залогиниться со своим аккаунтом Google. После того, как вы войдете, вас попросят указать названием домена, где планируется использовать reCAPTCHA.

Скопируйте и вставьте ключи public и private API на странице настроек плагина в административной панели WordPress. Ниже ключей API под разделом Plugin Functionality необходимо отметить две галочки рядом с опциями Registration form и Login form .

Плагин Better WordPress reCAPTCHA также позволяет вам добавлять reCAPTCHA в форму комментариев WordPress.

Вот и все, теперь можно нажать на кнопку Save Changes для сохранения проделанных изменений.

Для того, чтобы увидеть recaptcha в действии, выйдите аз административной панели WordPress. Вы заметите включенную recaptcha на странице входа. Кликнув на ссылку регистрации вы также увидите, что страница защищена капчей.

Мы надеемся, что эта статья помогла вам добавить CAPTCHA на страницу входа и регистрации в WordPress. Капча спасет от потоков спам-регистраций, спама в комментариях и в целом обезопасит ваш сайт от вредоносных ботов.

По всем вопросам и отзывам просьба писать в комментарии ниже.

Не забывайте, по возможности, оценивать понравившиеся записи количеством звездочек на ваше усмотрение.

Установка ReCaptcha на сайт может стать отличным способом для защиты от спам-ботов. Благодаря этому можно уберечь свой проект от спам-комментариев или регистраций ботами. В этой статье вы узнаете, как поставить такой вид каптчи на свой сайт с использованием плагина для WordPress.

Технология защиты ReCaptcha принадлежит корпорации Google. В большинстве случаев, такая каптча намного проще для пользователя, так как требует только установки галочки – система сама проверит, робот это или нет. В некоторых случаях от пользователя потребуется пройти лёгкий тест.

ReCaptcha на сайт с плагином Advanced noCaptcha reCaptcha

Для начала скачайте себе плагин Advanced noCaptcha reCaptcha по ссылке ниже.

Установите плагин на свой сайт и активируйте. После этого в консоли появится новый пункт «Advanced noCaptcha». Перейдите в него.

Начать работу следует с получения «Site Key» и «Secret key», которые нужно ввести в соответствующие поля в настройках плагина.

Чтобы получить эти данные, перейдите сюда (вы должны быть залогиненны в Google). Перед вами появится форма, которую нужно заполнить: в поле «Название» запишите наименование вашего проекта, в поле «Домены» — адрес сайта. Также рекомендую оставить галочку «Отправлять владельцам оповещения», это позволит получать уведомления, если будет подозрительно активная атака ботов или возникнут какие-то ошибки.

После заполнения формы нажмите «Регистрация».

На следующей странице вы получите два кода, которые вам нужны для плагина, чтобы установить ReCaptcha на сайт. Из секции «Ключи» скопируйте код из поля «Ключ» и вставьте его в настройках плагина в поле «Site Key».

Затем скопируйте код из поля «Секретный ключ» и вставьте его в настройках плагина в поле «Secret key».

  • Language. Язык ReCaptcha на сайте рекомендую оставить по умолчанию – «Auto detected», то есть он будет определять автоматически.
  • Theme. Есть два вида оформления ReCaptcha – светла и тёмная. Подберите что-то под цвет вашего дизайна сайта.
  • Size. Есть два вида размера – нормальный и компактный. Тоже выбирайте относительно вашего дизайна.
  • Error Message. Сообщение об ошибке лучше перевести на русский язык. Например, вместо того, что там написано по умолчанию, можно указать «ОШИБКА! : Пожалуйста, пройдите каптчу правильно». Или что-то аналогичное на своё усмотрение.
  • Show Captcha on. Можно настроить, у каких форм будет отображаться ReCaptcha на сайте, например, формы авторизации, регистрации, сброса пароля, комментирования, поддерживаются также формы плагинов BBPress и WooComerce.