Защита от спама в WordPress при помощи плагина DCaptcha, простая капча на WordPress
Комментарии - важная составляющая любого сайта и блога. При помощи них ваши посетители могут общаться с вами или между собой. Если не поставить какую-либо защиту (капчу), то рано или поздно вас начнут доставать спам-боты.
Я сталкивался с проблемой спама. Нет, сообщения не захламляли блог своими нелепыми текстами, они просто нагружали базу и приходилось вручную от них избавляться, а это занимает время и нервы. Решил эту проблему установкой самой простой и, по-моему, самой удобной капчи - плагина Dcaptcha.
Простота этой капчи (captcha) заключается в том, что от посетителя, желающего написать комментарий, только требуется подтвердить галочкой, что он человек, в противном случае комментарий попадает сразу в корзину. У меня корзина отключена, поэтому я вообще не парюсь с ее очисткой. Как это сделать, я рассказал в этом посте: отключаем корзину в WordPress.
Плагин Dcaptcha не портит внешний вид сайта и не заставляет напрягать глаза расшифровками непонятных символов (я ненавижу такие капчи). Итак, давайте уже непосредственно перейдем к установке этой самой капчи.
Установка и настройка плагина Dcaptcha
На данный момент есть только бета версия капчи DCaptcha 0.2b, которая стабильно работает по сей день. Ее можно скачать c официального сайта разработчика -
Далее выполняем ряд несложных действий:
- Распаковываем архив dimoning.ru-captcha.rar и загружаем папку dimoning.ru-captcha в папку с плагинами wp-content/plugins/, которая находится на сервере хостинга
- Заходим в админ панель, вкладка "Плагины" -> "Inactive" и активируем плагин Dcaptcha
- Устанавливаем права доступа 777 на папку num, которая находится в папке /wp-content/plugins/dimoning.ru-captcha/
- Далее вбиваем в адресную строку браузера Url: http://ваш_сайт/wp-content/plugins/dimoning.ru-captcha/install.php и нажимаем "Enter". Это нужно чтобы сгенерировать уникальный код, защищающий капчу от взлома
Если вы все правильно сделали - под формой комментирования появится чекбокс "Это не спам". Вы можете написать что угодно. Для этого надо отредактировать файл /wp-content/plugins/dimoning.ru-captcha/dimoning.ru-captcha.php.
Я не спам! (<span style="color:#F60;">обязательно</span>)
Также в этом файле можно отредактировать страницу, которая будет показываться, если галочка не была поставлена. Я решил не парится над дизайном это странички и просто добавил пару слов.
Если у вас все замечательно работает - отлично. И не забудьте установить права доступа на папку num обратно на 755 (смотри выше пункт 3).
Для тех, у кого WordPress версии 3 и выше
У меня плагин сразу не заработал, т.к. версия WordPress 3.4.2. Проблема была в этой функции:
wp_set_comment_status ($id, 'delete');
Она прописана в файле /wp-content/plugins/dimoning.ru-captcha/dimoning.ru-captcha.php. Работает она лишь в старых версиях движка. В новых версиях для удаления комментариев используют другую функцию:
wp_delete_comment ($id);
Вам нужно лишь заменить старую функцию новой и все должно заработать.
У меня этот плагин стоит уже год и за это время спам-боты меня ни разу не побеспокоили. Только спам-людишки иногда заглядывают, но от них только одно лекарство =)