Как защититься от спама без капчи

Надоело вычищать спам с автопортала. Включать премодерирование не хотелось — для объявлений может быть важна скорость появления комментария на сайте, «модерировать» выходит примерно раз в сутки. Вряд ли такая скорость появления комментариев на портале порадует пользователей. Ставить капчу не захотел из-за нелюбви к капчам. Плагины для предварительной фильтрации на стороннем сервере показались так же не совсем удобными — бывает отклоняют полезные комментарии, или наоборот пропускают спам. Да и трафик у сервера не резиновый.
Решил заменить переименовать поля в форме добавления комментария.
Хак в виде плагина не оформлял. Подозреваю вордпресс версии портала жить уже не долго 🙂
В форме добавления комментариев (comments.php) поменял
<input id="h" class="textfield" tabindex="2" name="email" size="24" type="text" value="" />
<input id="email" class="textfield" tabindex="2" name="слово" size="24" type="text" value="&lt;?php echo $comment_author_email; ?&gt;" />
...
<textarea id="comment" tabindex="4" cols="50" name="другое слово" rows="8"></textarea>

В стили добавил #h{display:none}
В начале файла обработки комментария (wp-comments-post.php)

$_POST['comment'] = $_POST['другое слово'];
$_POST['author'] = empty($_POST['email']) ? $_POST['author'] : '[СПАМ] '.$_POST['author'];
$_POST['email'] = $_POST['слово'];

Вместо «слово» и «другое слово» — естественно другие слова.

Пока планирую посмотреть сколько спам-комментариев такая защита отловит.
Спаму должен добавляться префикс СПАМ. Позже буду либо рубить обработку на этом этапе, либо засовывать в категорию спам. На этом же этапе можно фильтровать пользователей с нецензурными никами.

Метки: ,
Автор: dimas

6 комментариев к “Как защититься от спама без капчи

  • Огромное вам пасибо! а еще посты на эту тему будут в будущем?
  • да, и если использовать такой способ, при обновлении версии блога стоит проверять не потеряются ли изменения
  • не очень то до конца понял
  • Если в панели управления Wordpress (Параметры->Обсуждение), в "Модерирование комментария" добавить автоматическое отклонение комментариев с меткой [СПАМ], то практически 100% автоматически добавляемых комментариев будут отлавливаться.
  • еще добавлю
    Со временем спаммеры могут подобрать значения полей в "слово" и "другое слово"
    Тогда можно добавить ротацию - допустим по четным дням пхп код страницы будет генерировать одно значение, по нечетным другое.

    Либо менять значения через js при загрузке страницы.

Добавить комментарий

Ваш e-mail не будет опубликован.