Как избавиться от спама в WordPress. Защита от спама в WordPress без плагина Спам в комментариях wordpress
Ребята привет! С вами Саша Борисов! Скажите, бывали ли с вами такие случаи, заходишь на чей-то блог, читаешь классную статью, хочешь оставить комментарий и так лень напрягать мозги для того чтобы вводить капчу (защиту от спам-роботов)? Я думаю не раз.
Ну вы же не спамер правда? А вот в целях защиты ее вводить нужно и нужно это для владельца блога, а не для вас. Кстати из-за того, что на многих блогах стоит защита от спама (капча), статьи мало комментируют. Это факт. В этой статье я поведаю вам о том, от спама в комментариях без капчи, а так же расскажу какие вообще существуют плагины для борьбы со спамом на движке wordpress.
Для тех кто в танке (для новичков) хочу объяснить что вообще такое капча. Капча — это какая-то маленькая логическая задачка, находящаяся рядом с формой добавления комментария к статье или странице блога, которая защищает ваш блог от спам-роботов, так как они создают значительную нагрузку на блог, а так же, извините за выражение, засирают ваш ресурс всякими рекламными ссылками, дибильным текстом и т.д.
Спам-робот — это не человек. Это программа, в которую заложены определенные действия, а именно — заходить на чужие ресурсы и при виде какой-то формы где можно оставить какое-то сообщение, обязательно нагадить.
Изначально на движке wordpress не установлено ни какой защиты от спама в комментариях, ни каких защитных кодов и плагинов в нем нет. Это нужно срочно исправлять. Когда ваш блог еще молодой, то конечно же спам-роботы не будут так сильно атаковать вас, но вот когда ваш ресурс разрастется, когда на нем будет большая посещаемость и т.д., вот тогда вы поймете как важна защита от этих негодяев.
Итак начнем. Какие лично я знаю плагины защиты от спама в комментариях.
1. Math Comment Spam Protection — хороший плагин защиты от спама. Сам им пользовался раньше пока не узнал о более эффективном плагине защиты от спама, о нем я расскажу позже. Плагин Math Comment Spam Protection создает математическую задачу при добавлении комментария.
Перед тем как оставить комментарий на блоге человек должен решить определенный математический пример, допустим: сколько будет 4 + 7, 6 + 13, 2 + 5 и т.д.
5. Simple CAPTCHA — говорят отличный плагин для защиты от спама. Эта капча является одной из самых эффективных капч для wordpress. Не знаю почему, но лично на моем блоге она не работает. Не то что не работает, ее вообще не видно. Скачал плагин, закинул в папку с плагинами, а wordpress его не видит. Странно. Ну да ладно, не беда, есть другие плагины.
Если у вас плагин будет работать — супер! Установка та же. Скачиваете плагин , закидываете в папку с плагинами и активируете.
6. SI Captcha Anti-spam — еще один плагин защиты от капчи. Эффективный, но тяжелый, в смыле вести много кб. Скачать плагин . Установка все та же. В админке можно настроить плагин на русский язык. В капче есть возможность прослушать звук. =)
7. — классный плагин защиты от спама. Он не просто красивый он еще и призывает людей к тому чтобы оставить комментарий на вашем блоге. Для того чтобы читатель оставил коммент ему нужно крутить картинки и поставить их вертикально. Забавно да? Мне лично очень нравиться =)
Для этого откройте файл comments.php темы вашего блога, найдите там строчку — ID); ?> и переместите ее выше на несколько строк, а именно над строкой
Если поиски не увенчаются успехов (в различных модификациях тем код может различаться), то поищите строку, которая содержит comment_author_url, name=»url» или id=»url» и внешне схожа с вышеупомянутым php текстом.
Защищаемся от спам-программ
Автоматический скрипт обходит саму страницу, на которой и находятся формы для заполнения. Он использует определенный алгоритм post запросов, который сводит в нет удаление URL блока. Однако, можно также поставить палки в колёса для таких ботов. Для этого зайдите в корневую папку ФТП вашего проекта и отредактируйте файл wp-comments-post.php. Необходимо найти строку, которая начинается с $comment_author_url и заменить её на $comment_author_url = «»;
Подытожим
На сегодняшний день не существует идеальной системы, которая способна в полной мере удовлетворить дизайнерские идеи, требования программиста, а самое главное — SEO оптимизатора. Любой движок необходимо дорабатывать — это нормально! Правила, которые приведены в вышеупомянутом тексте позволяют отредактировать лишь один, однако весьма важный компонент. В последующий редакциях мы ещё не раз затронем защиту wordpress не только от спама, но и от других действий черных оптимизаторов. Развивайте свой сайт и не позволяйте на этом наживаться другим!
Защита от спама в WordPress – рано или поздно все блогеры задаются этим вопросом. Есть разные способы борьбы со спамом.Самый простой, но не самый лучший способ это установить палагин.
Вот парочка самых популярных:
Вместо этого я просто сделал эту защиту от спаса вручную – способ очень простой.
Способ заключается в том, что мы скрываем стандартное поле для ввода комментария ‘comment ‘ и заменяем его на новое созданное поле ‘real-comment ‘. Для посетителей все останется без изменений они и не заметят разницы, а вот спам-скрипты при попытке заполнить стандартное поле с именем ‘comment ‘ будут попадать на фильтр запрещающий им комментировать.
1. Проверка на спам.
Начнем мы с добавления фильтра спама, у нас в форме комментария будет 2 поля. Одно скрытое – это стандартная форма ‘comment ‘ и второе поле – это новое созданное нами поле. Добавляем функцию которая будет определять, если поле было заполнено комментатором – это видимое в шаблоне, то комментарий пропускается, а если скрытое, то публикация запрещается.
Для этого вставим такой код в functions.php
:
//проверка на спам
add_filter(‘pre_comment_on_post’, ‘verify_spam’);
function verify_spam($commentdata) {
$spam_test_field = trim($_POST[‘comment’]);
if(!empty($spam_test_field)) wp_die(‘Спаму нет!’);
$comment_content = trim($_POST[‘real-comment’]);
$_POST[‘comment’] = $comment_content;
return $commentdata;
}
2. Добавляем в шаблон новое поле для ввода комментария.
Существует два варианта как это можно сделать:
1. Если у Вы используете вывод формы комментария не через функцию comment_form() (полностью заменяет форму комментария). В этом случае редактируем файл comments.php шаблона, находим там что-то похожее на данный код:
И заменяем его на код:
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;
}
На этом все, готово. У нас есть видимое поле для ввода комментария ‘real-comment ‘ (можно использовать любое имя), а стандартное ‘comment ‘ поле скрытое от посетителей. И есть функция которая фильтрует эти поля. Больше автоматический спам вас не побеспокоит.