Archive for mysql

Фильтрация спама в WordPress

Совсем позабыл изредка проверять очередь комментов и за две недели бездействия очередь доросла до 3521 постов. Ох уж этот спам.. Вручную модерировать не представлялось возможным, Apache/Wordpress непристойно ругались при открытии странцы, что-то вроде “Zero page length”, точно не помню. Так как большинство спама было на буржуйском языке, то я взялся за написние SQL функции проверки наличия русских букв, но эта затея мне показалась черезчур ”тайм консюминг” и инвестиция времени не оправдалывала результат, ROI явно меньше нуля.  После недолгих раздумий решил фильтровать посты по самым распространённым гласным в русском языке - а, и, е.

UPDATE wp_comments SET comment_approved = ‘1′ WHERE comment_content LIKE “%а%” OR comment_content LIKE “%и%” or comment_content LIKE “%е%”;

помечаем остальные комменты как спам:

UPDATE wp_comments SET comment_approved = ’spam’ WHERE comment_approved = ‘0′;

Вуа-ля. Awaiting Moderation (0). Конечно, такую проверку лучше реализовать при сабмите формы, средствами PHP, но в данной ситуации это было самое оптимальное решение во всех отношениях.

Извитяюсь, если оставил когда-то ваши комментарии без ответа, сегодня отвечу на все после прогулки(весна пришла, весна пришла!!!).

Comments (3) Голосовать

 WMas - интернет каталог блогов Каталог блогов Blogdir.ru Рейтинг блогов BLOGUS.RU
eer