Setting Blacklist to auto-block
-
I like the WP blacklist, but we get a lot of spam, and I’ve been getting tired of deleting moderated comments. So, I made the following change to blacklist, and thought it might be something that others would be interested in.
To automatically block spam (kind of like MT Blacklist, but not quite the same), I did this:
First, I had WP-Blacklist set up, with the default settings. (If you’ve modified the settings, adapt the information below as necessary).
Second, I altered the wp-post-comments.php file, which read:
$blacklists = $wpdb->get_results(“SELECT domain FROM blacklist”);
foreach ($blacklists as $blacklist) {
$regex = “/”.$blacklist->domain.”/i”;
if (@preg_match($regex, $url))
$approved = 0;
if (@preg_match($regex, $email))
$approved = 0;
if (@preg_match($regex, $comment))
$approved = 0;
}
Replacing each instance of
$approved = 0;
With this:
{
echo (‘Your Comment: ‘);
echo ($comment);
echo (‘<br><br>’);
die( __(‘Sorry, but some of the content of this comment appears to violate our comment policies. This determination has been made using filtering software. If you believe you have received this message in error, please contact us by e-mail as soon as possible. In addition, please note that this comment will not be saved on our server. Therefore, if you wish to preserve any of the content of this comment, you should copy it from this screen right now. Thank you.’) );
}
That’s it.
And, of course, you can modify the setting as desired. Frankly, you could just set it to die if it’s got a blacklist match. But I strongly wish not to kill legitimate comments. And the die means that there’s no chance to get the comment back. So, as currently set up, it echoes the comment (and warns the commenter), giving the commenter a chance to save the text if it’s legit.
- The topic ‘Setting Blacklist to auto-block’ is closed to new replies.