ГлавнаяWordpressЗащита → Мой метод избавления от спама в комментариях, для WordPress

Мой метод избавления от спама в комментариях, для WordPress

Комментариев: 13Мой метод избавления от спама в комментариях, для WordPress
  • Хороший способ, буду использовать у себя..

    ОТВЕТИТЬ ↓
  • Да, интересный способ. Думаю, с помощью JavaScript можно придумать множество подобных вариантов защиты.

    ОТВЕТИТЬ ↓
    • я пока только начинающий пользователь wp но уже успел побывать на ХЗ каком колличестве сайтов посвященные WP, и могу с твердой увереностью сказать, что ваш блог один из лучших, спасибо.

      ОТВЕТИТЬ ↓
  • Интересно, думаю стоит попробовать smile

    ОТВЕТИТЬ ↓
  • Сегодня обнаружил, что есть спамеры, которые вообще не через страницу постят комментарии, а отправляют данные напрямую в файл wp-comments-post.php.

    При таком раскладе, этот способ спам не отфильтрует. Поэтому, потихоньку созревает статья - "избавляемся от комментариев (часть 2)". smile

    Думаю, с помощью JavaScript можно придумать...

    Так и есть, но сейчас (полсе разбора wp-comments-post.php) начинаю понимать, что все они будут сводится к хукам pre_comment_on_post или comment_post. Имею ввиду, как не крути, а блокировать комментарий нужно в файле wp-comments-post.php.

    ОТВЕТИТЬ ↓
    • Сегодня обнаружил, что есть спамеры, которые вообще не через страницу постят комментарии, а отправляют данные напрямую в файл wp-comments-post.php.

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

      ОТВЕТИТЬ ↓
      • решают путем переименования файла wp-comments-post.php

        По-моему это лишнее!

        Можно и без переименования, по крайней мере с версии 2,8 в wp-comments-post.php добавили новый хук (action - действие), через него можно удобно заблокировать спам smile

        ОТВЕТИТЬ ↓
    • Вот хук, которым можно предотвратить комментирование прямо в файл wp-comments-post.php

      /* Хук, который блокирует комментарий, если он был отправлен не с комментируемой страницы
      -------------------------------------------------------------------------------------------- */
      function kama_check_comment($comment_post_ID) {
      	$ref = trim(preg_replace('!/comment-page.*|https?://(.*?)/|#.*|\?.*!i','',$_SERVER['HTTP_REFERER']),'/');
      	$permalink = trim(preg_replace('!/comment-page.*|https?://(.*?)/|#.*|\?.*!i','',get_permalink($comment_post_ID)),'/');
      	if ($permalink != $ref)
      		wp_die("You have no permission to post a comment!");
      	else
      		return $comment_post_ID;
      }
      add_action('pre_comment_on_post', 'kama_check_comment',0);
      

      Код проверяет рефер-ссылку, откуда был отправлен post запрос. Если Рефер-ссылка не равна ссылке комментируемой страницы, то комментарий блокируется (выводится сообщение - You have no permission to post a comment!).

      ОТВЕТИТЬ ↓
  • Отличный метод! А чтобы ссылка была похоже на кнопку, ее просто рисуем как кнопку и вставляем внутри ссылки! Возьму себе этот метод на вооружение, вместо чекбокса "я не робот" )))

    ОТВЕТИТЬ ↓
  • А подскажите какой плагин комментариев вы используете, а то хочу на своем блоге реализовать тоже бб коды и смайлы.

    ОТВЕТИТЬ ↓
    • Да уж, хороший способ и мало замороченный, но не идеальный.
      ===
      У меня за день 517 спам-комментов набегает, если их в ручную потом искать - с ума сойдешь. Поэтому я поставил офигенный плагин Невидимая Капча и в ус не дую.
      ---
      Зашел в корзину, удалил весь хлам одним нажатием кнопки и крааасатища! smile
      ===
      Естественно тем, кто любит и умеет копаться в кодах - этот метод хорошая разминка для воображалки, возможно кто-то пойдет дальше и придумает что-то необычное и безупречное.

      ОТВЕТИТЬ ↓
  • Пользуюсь Invisible Captcha, смысл почти тот же)

    ОТВЕТИТЬ ↓
Форма комментирования

¤ Вставляйте код кнопкой: "Код" (php, js, html, css, sql);
¤ Выделяйте HTML код кнопкой: "Выделить" (<div>);
¤ Перед отправкой комментария используйте "Превью";
¤ Не пишите спам/бред — бесполезно!

Подписаться на комментарии без комментирования:

X

Забыли пароль?