Как защитить свой блог от спама без плагинов

Автор:
(Людмила Лунева)

Веб-дизайнер и разработчик сайтов на wordpress

Последнее время спамеры совсем распоясались. Стоит только отключить плагин антиспама, так сразу, в течение ближайших 10 минут вы получите десяток идиотских предложений типа "Выигрывайте в казино" или "Поделюсь рецептом как заработать состояние за три дня не вставая с дивана".

Защита от спама является первостатейной задачей каждого владельца сайта.
Как защитить сайт от спама без плагинов
Обычно для этого используют плагины. На своих сайтах до последнего времени я использовала плагин wp-spamfree. Плагин неплохой, но и у него есть недостатки.

Поэтому, когда я нашла на сайте studio-gost.ru способ защиты от спама без плагинов, то сразу же протестировала его на этом блоге.

Способ оказался простым и очень действенным - за месяц использования я не получила ни одного видимого спам-комментария.

Как известно, спамеры умеют записывать комментарии не только через форму комментариев на сайте, но непосредственно в базу данных сайта через файл wp-comments-post.php поэтому, прежде, чем писать этот пост я зашла в PhpMyAdmin, открыла таблицу Comments в базе данных и просмотрела ее - спама нет.

Итак, как защитить свой сайт от спама в комментариях?

Содержание:

Нужно спрятать стандартное поле для ввода комментария "comment" и заменить его на новое поле "real-comment".

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

Вот так просто и изящно.

Давайте сделаем это.

1. Если комментарии выводятся с помощью comments_template() ↑

Откройте файл comments.php, найдите в нем тег

<textarea id="comment" name="comment"></textarea>

и замените его следующим:

<textarea id="comment" style="display: none;" name="comment"></textarea>
<textarea id="comment" class="textarea" name="real-comment"></textarea>

Название поля real-comment в последней строке замените своим названием.

Теперь откройте файл functions.php и добавьте в конец файла, перед закрывающим ?> следующий код:

Открыть ↓

Вот и все.

Проверить работу этого антиспама можно на страничке которую создал Kama - http://wp-kama.ru/wp-content/uploads/2010/07/kama_spamblock_checker.html

P.S. Забыла добавить, что теперь можно отключить и плагин против спама и капчу - надобности в них больше нет.

Хотите получать сообщения о скидочных акциях,
новых постах и темах для wordpress?
  1. Я нашёл, что у меня комментарии выводятся с помощью функ­ции comment_form()
    Куда вставлять код, если у меня таких значков "?>" в фале function куча?

    • при добавлении просто в конец файла у меня появляется 2 окна с водом коментариев...

      • Значит, вы невнимательно прочитали пост :).

        • Если комментарии выводятся с помощью функ­ции comment_form()

          для до­бав­ле­ния но­во­го по­ля вставьте в файл functions.​php этот код:

          //добавление своего поля для ввода комментария
          add_filter('comment_form_defaults', 'change_comment_form_defaults');

          function change_comment_form_defaults($default) {
          $commenter = wp_get_current_commenter();
          $default['comment_notes_after'] .='

          Комментарий

          ';
          return $default;
          }
          Вот и все.

          Вот я и вставил его и получил два коментария.

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

    • Пожалуйста :).

      Цена зависит от сложности и функциональности шаблона.
      Простые шаблоны стоят дешевле, сложные, соответственно, дороже.

      Копий продается, как правило, до 100.
      Но, иногда, больше.

  3. в обозревателе Firefox, некорректно отображаются комментарии к Вашим записям

    • В какой версии FF?
      Вы можете прислать мне скриншот?

      • Версия 22.0
        Сомневаюсь что скриншот поможет. При загрузке страницы, на мгновение все комментарии есть (развернуты), но после сразу исчезают и остаётся только самый последний, но если необходимо скриншо могу сделать. Может конечно дело в том, что у меня установлено несколкьо плагинов на FF, но раньше подобной проблемы не встречал.

        Благодарю Вас за статью, для меня она оказалась весьма полезна.

        • Скорее всего, причина в дополнениях для браузера.
          У меня стоит FF и все комменты на месте.

Внимание: все отзывы проходят модерацию.

Топ комментаторов
АватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватарАватар
Самые комментируемые записи
Самые читаемые записи

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

В каждом письме публикуется код разблокировки.

Пользуйтесь кодом только из последних, пришедших вам на Email, писем. Закрыть »

Постов 195
Отзывов 4349