Как да правим сечено на спамерите
Въпреки че съм благодарен на спамерите в този блог за това, че ми пращат оферти за Виагра, интернет покер и порнография, напоследък стават твърде "любезни" и стига вече.
Направих няколко проби и се оказа, че масово ползват Firefox с изключен JavaScript, който са автоматизирали по някакъв начин. И с 2-3 прости промени караме WordPress да приема само коментари от браузъри с включен flash.
- В wp-comments-post.php слагаме
if (empty($_POST['spamcheck']) or $_POST['spamcheck'] != 'true') { die(); } - В wp-content/themes/твоята тема/comments.php търсим <form и променяме реда на
<form action="<?php echo get_option('siteurl'); ?>/wp-comments-post.php" method="post" id="commentform"> <input type="hidden" name="spamcheck" value="false" id="spamcheck" />
За неразбралите, това което правим е да сложим един JavaScript, който променя стойността на нашата променлива spamcheck на true, и една проверка в кода на WordPress, която да не пуска коментари без spamcheck. Ако някой иска специално да спамва твоят блог, това въобще няма да го спре, но реално 99% от спама не е насочен към конкретен блог, а се пуска където мине, и точно тези 99% си спестяваме.
Аз моите спамери ги моря, като ги карам да събират едноцифрени числа, както в детската градина. Учудващо е колко много са тия, дето не могат да смятат и/или не разбират български ;)
Много по-лесно е да си инсталира човек един плъгин - SpamKarma. Перфектна работа ми върши. Хваща всичкия спам и незнайно как разпознава истинските коментари. Освен това сам си поумнява с времето и натрупаните данни. Много хитро е направено.
Кое точно е по-лесното? Нали пак трябва да се занимаваш с филтъра (да го учиш, ала бала)?