Удаление спам комментариев по стоп слову в WordPress

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

Однажды один мой блог атаковали спамеры в итоге на сайте с 80 постами появилось око 300 000 комментариев что такое количество записей базе данных уже было близко к физическим лимитам хостинга.

Так как админ панель WordPress не дает возможность быстро удалить много комментариев, при этом хотелось отфильтровать комментарии роботов от ценных комментариев реальных посетителей.

Лучшим вариантом было составить sql запрос, как ни странно google не дал ничего подобного в место этого было куча других странных запросов, как например, удалить уже отмеченные как спам комментарии, какой то позор не представляю себе ситуацию в которой это могло бы понадобиться.

Мой запрос делает лучше, ищет спам комментарии по стоп слову/строке и сразу же без лишних вопросов их удаляет.

DELETE FROM wp_comments WHERE comment_content LIKE '%.html%';

В моих спам комментариях  было много сайтов  заканчивающихся на  «.html» , поэтому вся соль в этой строке, если на нашем сайте часто спамят комментами содержащими иероглиф любовь ( кажется он так называется) то ставим в запрос его , все чистится быстро и просто, возможность удалить нужные и полезные комментарии так же присутствует, но я точно знал что иероглифы на моем сайте были излишни как и ссылки оканчивающиеся на .html.

Если захотите использовать этот запрос на своей сайте помните что вы действуете на собственный страх и риск, а так же что префикс вашей базы данных может отличаться от wp_ соответственно таблица wp_comments  может иметь другой префикс.

Так же напомню что самый удобный способ сделать sql запрос из админки wordpress это связка плагинов Debug Bar + Debug Bar Console

Выглядит это все примерно так:

 

25-12-2014 23-51-48

Debug Bar Console позволяет выполнять как sql запросы так и php код из любой части вашего сайта.

Этакий веб шел в админке.

P.S. Кстати о web шелах очень скоро будет рассказано в следующих статьях .

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *