Really Simple CAPTCHA

Описание

Плагин «Really Simple CAPTCHA» не работает сам по себе, и предназначен для работы с другими плагинами. Изначально он был создан для Contact Form 7, но вы можете использовать в своих плагинах.

Примечание: Плагин действительно «really simple», название не обманывает, а значит он не обеспечивает серьезной защиты. Если она вам нужна, вам нужно попробовать другие варианты.

Как это работает?

Really Simple CAPTCHA не использует PHP сессии для хранения данных, в отличии от многих других решений, используются временные файлы. Это позволяет плагину избежать конфликтов.

Когда вы генерируете CAPTCHA, плагин «Really Simple CAPTCHA» создает два файла. Первый – это изображение для CAPTCHA, а второй – текстовый файл с правильными ответами.

Два файла имеют одинаковые (но случайные) имена, например «a7hk3ux8p.png» и «a7hk3ux8p.txt». Если респондент отвечает «K5GF» на вопрос с картинки «a7hk3ux8p.png», плагин «Really Simple CAPTCHA» высчитывает хеш для «K5GF» и сверяет его с эталонным хешем в файле «a7hk3ux8p.txt». Если есть совпадение, то ответ респондента признается правильным.

Как использовать с вашим плагином

Примечание: Ниже приведены инструкции для разработчиков плагинов.

Во-первых, создайте экземпляр класса ReallySimpleCaptcha:

$captcha_instance = new ReallySimpleCaptcha();

Вы можете изменить переменные экземпляра по своему желанию.

// Change the background color of CAPTCHA image to black
$captcha_instance->bg = array( 0, 0, 0 );

Изучите really-simple-captcha.php, если вам интересны другие переменные.

Создание случайного слова для CAPTCHA.

$word = $captcha_instance->generate_random_word();

Создайте файл изображения и соответствующий текстовый файл во временном каталоге.

$prefix = mt_rand();
$captcha_instance->generate_image( $prefix, $word );

Затем покажите изображение и получите ответ от респондента.

Проверьте правильность ответа.

$correct = $captcha_instance->check( $prefix, $the_answer_from_respondent );

Если $correct возвращает true, продолжайте. В противном случае, блокируйте респондента – кажется это не человек.

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

$captcha_instance->remove( $prefix );

Это все.

Если вы хотите посмотреть живое демо работы плагина, зайдите на страницу плагина Contact Form 7.

Скриншоты

  • screenshot-1.png

Установка

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

В любом случае, если вы устанавливаете плагин вручную, просто следуйте этой инструкции:

  1. Загрузите весь каталог really-simple-captcha в каталог /wp-content/plugins/.
  2. Активируйте плагин на странице «Плагины» в панели управления WordPress.

Для справки: У этого плагина нет страницы в «панели управления».

Часто задаваемые вопросы

CAPTCHA не работает; изображение не показывается.

Для работы Really Simple CAPTCHA необходимо установить библиотеки GD и FreeType. Попросите сделать это у своего системного администратора или у технической поддержки вашего хостинга.

Также установите права доступа для временного каталога, которых хватит для записи. Месторасположением временного каталога вы можете управлять с помощью переменной tmp_dir в классе ReallySimpleCaptcha. Обратите внимание, что настройка зависит от вызывающего плагина. Например, Contact Form 7 использует wp-contents/uploads/wpcf7_captcha как временный каталог, но может использовать и другую – в зависимости от ваших настроек.

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

Отзывы

17.12.2021
Needed this for an installation with custom forms. I used the plugin developers instructions and was able to make a fully custom implementation based on server side validation within 30 minutes. No more spam bots misusing the forms. Thank you!
21.01.2021
Worked great for me a a simple solution to annoying emails. looked good
18.11.2020
Captcha so helpful as a tool for the spam protection. This plugin do everything what I'm looking for.
24.07.2020
All set as should be, but after writing message I can send the message without captcha. It's there but without any function. Mailbots has no obstacle. I don't want miracles for free but at least some efect wooul be great.
Посмотреть все 123 отзыва

Участники и разработчики

«Really Simple CAPTCHA» — проект с открытым исходным кодом. В развитие плагина внесли свой вклад следующие участники:

Участники

«Really Simple CAPTCHA» переведён на 36 языков. Благодарим переводчиков за их работу.

Перевести «Really Simple CAPTCHA» на ваш язык.

Заинтересованы в разработке?

Посмотрите код, проверьте SVN репозиторий, или подпишитесь на журнал разработки по RSS.

Журнал изменений

2.1

  • Использует hash_equals() для сравнения строк.

2.0.2

  • «Stable tag» refers to trunk.

2.0.1

  • Проверяет существование файла перед попыткой его удаления.

2.0

  • Внесены некоторые правки в код для соблюдения стандартов программирования.
  • Обновлен файл лицензии; добавлен пункт об используемых шрифтах.