Webbell » WordPress хаки и советы » Хак для защиты от автоматического спама в комментариях
Правила Контакты Чтение RSS

Хак для защиты от автоматического спама в комментариях

У нас вы можете скачать бесплатно Хак для защиты от автоматического спама в комментариях .

Не пропустите комментарии к Хак для защиты от автоматического спама в комментариях.
Данный материал предоставлен сайтом Webbell.ru исключительно в ознакомительных целях. Администрация не несет ответственности за его содержимое.
Плагинов, встраивающих в WordPress антиспам-систему, существует достаточно много. Однако у всех у них есть целый ряд весьма серьёзных недостатков, создающих гораздо большие неудобства «нормальным» посетителям блога, чем собственно спамерам. Для чего нужна защита от спамеров, думаю, объяснять не нужно, но если всё-таки кто-то не знает, что это такое, поясню на простом примере. Предположим, у вас захлопнулась дверь в квартире. Многие люди не знают, что делать если сломался замок или дверь закрылась. И вы хотите найти ответ на этот вопрос в интернете. Находите сайт об аварийном вскрытии замков, к примеру, вот такой: http://www.zamok-sos.ru, начинаете читать информацию о замене и установке нового замка, и видите в комментариях кучу абсолютно ненужной информации, не имеющей никакого отношения к замкам. Это и есть спам, с которым призваны бороться такие плагины.

Так, например, обязательная регистрация на блоге для комментирования статьи автоматически снижает активность пользователей раз примерно так в десять. Капчи любого вида перестают помогать ровно в тот момент, когда плагин с капчей становится достаточно популярным, чтобы привлечь внимание авторов программ для автоматического спама. И это не говоря уже о том, что современные капчи роботами распознаются гораздо быстрее, чем живыми людьми (что даже привело к появлению грустной шутки: дескать, если пользователь вводит капчу дольше тридцати секунд, значит, он человек, а если меньше пяти, то точно бот).

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

Установка на блоге премодерации комментариев проблемы также не решит: на любом мало-мальски популярном (да и на непопулярном тоже) блоге придётся ежедневно прочитывать сотни и тысячи комментариев и «вручную» выделять из потока спамных записей — осмысленные.

А между тем избавиться от 99% всех комментариев не так уж сложно.

Дело в том, что WordPress — довольно популярный движок, и автоматически заполнить на нём форму комментария проще простого: достаточно взять из шаблона названия нужных полей и заполнить их простеньким скриптом.

Соответственно, защититься от большей части автоматического спама тоже не составляет труда: достаточно просто переименовать поля в форме отправки комментария.

Это способ, конечно, не спасает от так называемого «ручного» спама, не спасает и от настроенный специально под ваш сайт программ, но весь основной поток автоматического спама он отсекает качественно и с гарантией.

В принципе, изменить название можно у любого поля на странице комментирования, однако наиболее удобно и логично проделать эту операцию для поля comment. Дело в том, что поля «Имя», «E-mail» и ряд других, однажды заполненные на каком-то блоге на WordPress, будут автоматически заполняться и на всех других блогах на ВордПрессе, а вот поле comment такой возможности лишено.

Чтобы сменить название поля comment, выполните следующие действия:

1. Откройте файл шаблона comments.php и найдите в нём что-нибудь похожее на следующий код:

<textarea name="comment" id="comment" cols="61" rows="13" class="textarea"></textarea>


после чего замените его на другой код:

<div class="smo"><textarea name="comment" id="comment" cols="61" rows="13" class="textarea"></textarea></div><textarea name="real-comment" id="real-comment" cols="61" rows="13" class="textarea"></textarea>


2. Откройте файл шаблона style.css и добавьте в него строчку:

.smo {position: absolute; left: -1000px;}


Поле для текста комментария по умолчанию теперь стало невидимым для пользователей (оно сдвинулось на 1 000 пикселей за пределы видимой части экрана), а вместо него показывается другое поле, с названием real-comment.

Конечно, вместо смены позиционирования поля можно было бы просто прописать атрибут hidden... однако этот атрибут легко распознаётся всеми современными программами автоматического спама. А вот до качественного анализа css-правил эти программы ещё не доросли.

3. Замените в файле wp-comments-post.php строки:

$comment_author       = trim(strip_tags($_POST['author']));$comment_author_email = trim($_POST['email']);$comment_author_url   = trim($_POST['url']);$comment_content      = trim($_POST['comment']);


на следующие строки:

$spam_test_field = trim($_POST['comment']);if(!empty($spam_test_field)) wp_die('Спаму нет!');$comment_author       = trim(strip_tags($_POST['author']));$comment_author_email = trim($_POST['email']);$comment_author_url   = trim($_POST['url']);$comment_content      = trim($_POST['real-comment']);


Это изменение в базовом файле движка позволяет защититься от ситуации, когда скрипт «не глядя» заполняет оба поля и тем самым выдаёт свою машиннную сущность.

Соответственно, если поле comment окажется заполненным, комментарий добавлен не будет.

Если вы используете на своём блоге для комментирования какие-нибудь сторонние плагины, измените соответствующие места в их коде по аналогии.

Чтобы проверить работу хака, удалите из css-файла правило .smo{} и попробуйте заполнить первое текстовое поле для комментария. Если вы всё сделали правильно, то разместить комментарий вам не удастся.


Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

«    Июль 2018    »
ПнВтСрЧтПтСбВс
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
Яндекс Апдейты
↓ Апдейты Яndex тИЦ
18.11.2017 ←Последний
04.11.2017
16.08.2017
↓ Апдейты выдачи Яndexa
17.07.2018 ←Последний
14.07.2018
12.07.2018
↓ Апдейты ЯКаталога
16.01.2018 ←Последний
20.12.2017
15.12.2017
Мы рекомендуем
Заработай на сайте!
Gogetlinks-Биржа вечных ссылок для сайтов с Тиц
Getgoodlinks-Биржа вечных ссылок для сайтов с PR


Опрос на портале

Сколько у вас сайтов?

Больше 20 сайтов
От 10 до 20 сайтов
От 5 до 10 сайтов
От 1 до 5 сайтов
Нету сайтов

Наш архив
Облако тегов
ajax, Build, DataLife, dle, dle 9.0, dle 9.2, Engine, Final, Google, Opera, Release, RSS, WordPress, адаптация, административная панель, бесплатно, виджет, Игровой, кино, комментарии, модуль, новости, Новый, Оригинал, парсер, парсер поисковых систем yandex google рассылка комментариев по DLE Joomla Community спаммер раскрутк, Переходы, плагин wordpress, сайта, сайтов, сбор данных телефонов адресов email контактов потенциальные клиенты BlackSpider универсальный сборщи, тема, тематики, универсальный, хак, хак wordpress, Шаблон, шаблона, Яндекс

Показать все теги
Последние комментарии
Популярные файлы

Информация!
Уважаемый посетитель! Присоединяйтесь к нам
в Твиттере.