Если вы ищете простые и проверенные способы избавиться от спама в комментариях вашего сайта, советуем почитать данную статью. Спам — это коммерческая реклама, которая ведется путем рассылки писем на ваш почтовый ящик, в социальных сетях появляется как сообщения, адресованные вам лично. И вы меня конечно же поймете и поддержите, если я скажу, что очень часто можно встретить спам в комментариях в своем блоге. В общем и целом, все мы очень устали от этого спама (это не касается тех, кто зарабатывает на создании специальных программа, которые и занимаются автоматической рассылкой спама): приходится постоянно проверять и удалять сообщения и комментарии, в которых содержится спам. Конечно же от спама кому – то и удается получить выгоду, а именно тем, кто занимается его рассылкой. Но мы уж точно не получаем ни какого удовольствия от кучи мусора на наших блогах и в почтовых ящиках!
Так как же можно наконец избавиться от спама? Для этого вы можете провести такой маневр как подмена полей. Но давайте начнем сначала. Ведь для того, чтобы оставить комментарии, необходимо сделать следующее: заполнить некоторые поля. Называются эти поля везде одинаково, а именно «comment». А теперь сделаем то, с чего и начали разговор об избавлении от спама: подменим это поле на другое. Причем для людей, которые захотят оставить комментарий ничего не измениться, а вот программу мы запутать сможем. Вместо поля с названием«comment» мы подставляем поле под названием «real – comment». Для этого нужно найти файл comments.php, а внем содержится код
<textarea id=»comment» class=»textarea» name=»comment»></textarea>
Производим замену
<div class=»smo»>
<textarea id=»comment» class=»textarea» name=»comment»></textarea>
</div>
<textarea id=»real-comment» class=»textarea» name=»real-comment»>
</textarea>
Потом открываем само поле для комментариев style.css и добавить туда код
.smo {position: absolute; left: -1000px;}
Откройте файл шаблона functions.php и добавьте туда код
//добавление своего поля для ввода комментария start
add_filter(‘comment_form_defaults’, ‘change_comment_form_defaults’);
function change_comment_form_defaults($default) {
$commenter = wp_get_current_commenter();
$default[‘comment_notes_after’] .=
‘<p class=»comment-form-real-comment»>
<label for=»real-comment»>Комментарий</label><textarea id=»real-comment»
aria-required=»true» rows=»8″ cols=»45″ name=»real-comment»></textarea>
</p>';
return $default;
}
//добавление своего поля для ввода комментария end
А чтобы скрыть стандартное поле нужно вставить код в style.css
.comment-form-comment {display: none;}
Поле, в котором будут пользователи оставлять свои комменты уже готово. Осталось только ввести код в functions.php, чтобы скрыть спам:
//проверка на спам start
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;
}
//проверка на спам end
И все готово! Защита от спама включена.
С помощью плагинов тоже можно заблокировать спаму доступ к комментариям вашего блога. Есть такой плагин как Akismet. Скачав и установив который вы сможете освободиться от нежелательной рассылки спама. Для скачивания зайдите на официальный сайт Akismet http://akismet.com/ и пройдите регистрацию, после которой вам представиться возможность получить специальный ключ для активации работы плагина по устранению спама. И плагин Disqus, принцип работы которого такой же. Перейдите на http://disqus.com/ для скачивания и установки.