This plugin plugin blocks spam in comments automatically, without requiring any end-user input or any javascript.
In a way it's similar to webvitaly's Anti-Spam however this doesn't require the user to enter anything at all.
- As of version 0.7.7 there's an option to add an extra javascript check, it's off by default.
The comment gets marked as spam if any of the following rules are true :
- If the comment is a trackback.
- If the time between loading the page and commenting is less than 10 seconds.
- If the Session variable specific to this form is not set.
- If the hidden input field have a different value than "-".
- If the comment includes more than 3 urls.
- If the referer isn't set properly.
Once the comment gets flagged as spam, and if the auto delete option isn't set, a json string will be appended to it to show why it was marked, for example :
{
"is-trackback": 0,
"no-session-token": 0,
"hidden-field": 1,
"number-of-urls": 5,
"referer": 0,
"too-fast": 1.902538061142
}
Translates to :
- They changed the hidden input field.
- They Had 5 URLs in the comment.
- It Took 1.9 seconds to submit the comment since the page was loaded.
Also note that the time calculations are per-form, so there are no false-positives if the user has multiple pages open on the site and commented on 2 of them in a short period of time.
Feel free to fork it and submit patches / fixes on github
Installation
-
Download from Wordpress's plugin registery or clone this repo to your
wp-content/plugins
folder. -
Activate the plugin through the 'Plugins' menu in WordPress
-
Optionally change the options in
/wp-admin/options-general.php?page=ooo-nospam-admin
to your liking. -
Watch
/wp-admin/edit-comments.php?comment_status=spam
to see it in action unless you set set it to auto delete.
Frequently Asked Questions
Are there any configuration options?
As of version 0.6 you can access all configurable options in /wp-admin/options-general.php?page=ooo-nospam-admin