WordPress.org

Plugin Directory

WP-SpamShield Anti-Spam

An extremely powerful WordPress anti-spam plugin that eliminates comment spam, trackback spam, contact form spam & registration spam.

1.8.9.1

released 04/21/15

  • Added an .htaccess file to the wp-spamshield directory to control browser access to certain files.
  • Added a fix to ensure that certain security plugins could not inadvertently block browser access to the jscripts.php file. This fix will prevent most of the occurrences of the issue discussed in Troubleshooting Guide step 14.
  • Upgraded the .htaccess file in the data directory (that protects the log file) to be compatible with changes in Apache 2.4.
  • Modified the log file creation process so that WordFence (and any other security plugins that compare plugin files against the WordPress repository) will no longer give the following warning: "Modified plugin file: wp-content/plugins/wp-spamshield/data/temp-comments-log.txt" when Blocked Comment Logging Mode is turned on. This file is supposed to change, since it's the log file.
  • Removed inline CSS from the three registration fields that WP-SpamShield adds, in order to make it easier for users to configure the look and feel of the registration page.
  • Updated the spam filters.

1.8.9

released 04/19/15

  • Made various minor code improvements.
  • Updated the spam filters.

1.8.8

released 04/13/15

  • Fixed a bug in one of the comment spam filters. Previously, if WordPress Discussion settings have "Comment author must fill out name and e-mail" unchecked, and a user submitted a comment where the author name and author URL were both blank, it would incorrectly be blocked. (The comments would go through if there was a URL.) This is fixed in this version.
  • Updated the spam filters.

1.8.7

released 04/08/15

  • Updated the spam filters.

1.8.6

released 04/04/15

  • Fixed a minor bug in the new custom widget.
  • Updated the spam filters.

1.8.5

released 04/02/15

  • Updated the spam filters.

1.8.4

released 03/30/15

  • Added new widgets. Converted the spam stat counter graphics to widgets, so they are much easier to add to your site now. No more messing around with code. There are a number of new widget options to check out.
  • Added a new customizable widget that has a number of color and style options, including a custom color chooser.
  • Fixed a few potential issues with UTF-8 and multibyte support.
  • Made a small fix to the contact form thank you message that will help multi-language users.
  • Made the comment spam blocking process a little more efficient.
  • Added info to the settings page with info on how much time the plugin has saved you.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.8.3

released 03/24/15

  • Added a contact form quicktag so users can just click a button in the editor to add a contact form to pages. No more manually inserting shortcodes.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.8.2

released 03/16/15

  • Increased minimum required WordPress version to 3.8 and added a minimum required PHP version of 5.3, as we are no longer supporting PHP 5.2. The PHP team stopped supporting PHP 5.2 back in 2011, and even PHP 5.3 reached its end of life in August 2014. WordPress has a current minimum requirement of 5.2.4, but PHP 5.4 is recommended - see the WordPress requirements. It's extremely important that users stay up to date with the most recent version of WordPress (currently 4.1.1) and a reasonably up-to-date version of PHP for security, functionality, and website performance. (Not only are the newer versions more secure, but they are faster, so its a double win.) We recommend PHP 5.4 or higher. Also, see PHP Unsupported Branches for more info.
  • Fixed XHTML validation error in the hidden input fields on the forms.
  • Internationalized the formatting of numbers used throughout the plugin so users in different countries will see numbers formatted according to their local customs. This will show in the blocked spam stats on the dashboard, spam counter widgets, and in the blocked comments log.
  • Updated the spam filters.

1.8.1

released 03/11/15

  • Updated the French (fr_FR) translation.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.8

released 03/09/15

  • Made some improvements to the spam blocking algorithm.
  • Made a number of various code and performance improvements.
  • Improved some of the error messages.
  • Fixed a couple bugs introduced in 1.7.9, including a bug in the contact form that incorrectly detected spam servers, and a compatibility issue with the new registration anti-spam feature and certain multisite configurations. This feature was rolled back while we look into the compatibility issues.
  • Made a few improvements to the blocked comment logging functionality.
  • Updated the spam filters.

1.7.9

released 03/06/15

  • Improved the registration spam protection capabilities.
  • Made a few improvements to the blocked comment logging functionality.
  • Removed some unnecessary technical info from notification emails that had previously been added by the plugin.
  • Made various code improvements.
  • Added new filters to the spam blocking algorithm.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7.8

released 02/27/15

  • Updated the Dutch (nl_NL) and German (de_DE) translations.
  • Made various code improvements.
  • Added new filters to the spam blocking algorithm.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7.7

released 02/21/15

  • Added an uninstall function that completely uninstalls the plugin and removes all options, data, and traces of its existence when it is deleted through the dashboard.
  • Added a fix to prevent certain rare situations from triggering duplicate emails to be sent by the contact form.
  • Added a fix to ensure contact form is implemented properly, and strictly enforce not being used in widgets or sidebars. Please see the contact form documentation for more info and usage instructions.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7.6

released 02/15/15

  • Updated the spam filters.

1.7.5

released 02/11/15

  • Removed some deprecated filters from the spam blocking algorithm.
  • Updated the spam filters.

1.7.4

released 02/06/15

  • Added WP-Spamshield Whitelist, a feature that allows you to whitelist specific email addresses that you would like to let bypass spam filters in the comments and contact forms.
  • Added option to allow keywords in comment author "Name" fields. This option is useful for sites with users that go by pseudonyms, or for sites that simply want to allow business names and keywords to be used in the comment "Name" field.
  • Made some improvements to the UI of the settings page.
  • Improved some of the error messages to make them more helpful.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7.3

released 02/03/15

  • Improved the Yahoo fix for the contact forms (implemented in 1.4.3) and restored "Reply-To" functionality. In version 1.4.3, I had to modify how the plugin handles the email address of the contact form submitter, in order to fix an issue with contact form submissions for users with @yahoo.com email addresses not getting sent. (See info on 1.4.3 update.) The contact form emails will still come from an email address that looks like wpspamshield [dot] noreply [at] yourdomain [dot] com. The difference now is that the "Reply-To" field is set to the contact form submitter's email address, so you can just click "Reply" in your email app, like you could before version 1.4.3. This should still avoid any spam problems with properly configured SPF records on your domain (and Yahoo's DMARC policy), while allowing contact form submissions from @yahoo.com email addresses.
  • Updated the French (fr_FR) translation.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7.2

released 01/30/15

  • Added compatibility for 2 additional caching plugins: Cachify and Gator Cache. As of this release, the following 12 cache plugins are supported (in order of popularity): WP Super Cache, W3 Total Cache, Quick Cache, Hyper Cache, WP Fastest Cache, DB Cache Reloaded Fix, Cachify, DB Cache Reloaded, Hyper Cache Extended, WP Fast Cache, Lite Cache, and Gator Cache.
  • Updated the Dutch (nl_NL) and German (de_DE) translations.
  • Made various minor code improvements.
  • Updated the spam filters.

1.7.1

released 01/27/15

  • Made various code improvements.
  • Updated the translation files.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.7

released 01/22/15

  • Updated the spam filters.

1.6.9

released 01/19/15

  • Added option to disable registration anti-spam protection.
  • Made various code improvements.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.6.8

released 01/16/15

  • Updated the spam filters.

1.6.7

released 01/13/15

  • Minor bug fix and improvement to the JetPack compatibility fix.
  • Updated the spam filters.

1.6.6

released 01/09/15

  • Updated the spam filters.

1.6.5

released 01/04/15

  • Upgraded the code for the spam counter widget. The previous widget code was written prior to WordPress 2.8 and needed to be upgraded. (In WordPress 2.8 a better, more efficient widget API was added. After that, the old code still worked with minor modifications.) In WordPress version 4.1 a couple issues started appearing. (At least that's when they were first reported.) When using the Customizer feature in the Dashboard, PHP errors related to undefined indexes would appear in logs. After upgrading to this version, any previously placed WP-SpamShield widgets will disappear from your site and will need to be re-inserted. One benefit of the upgraded code is that now multiple instances of the widget can be inserted.
  • Made various minor code improvements.
  • Increased minimum required WordPress version to 3.7. It's extremely important that users stay up to date with the most recent version of WordPress (currently 4.1) for security and functionality.
  • Minor update to the translation files.
  • Added new filters to the spam blocking algorithm.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.6.4

released 12/30/14

  • Updated the spam filters.

1.6.3

released 12/21/14

  • Updated the spam filters.

1.6.2

released 12/18/14

  • Improved some of the filters in the spam blocking algorithm.
  • Increased minimum required WordPress version to 3.6. It's extremely important that users stay up to date with the most recent version of WordPress (currently 4.1) for security and functionality.
  • Updated the spam filters.

1.6.1

released 12/15/14

  • Updated the spam filters.

1.6

released 12/11/14

  • Added a compatibility fix to prevent certain conflicting plugins from triggering duplicate emails to be sent by the contact form.
  • Updated the spam filters.

1.5.9

released 11/23/14

  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.5.8

released 11/13/14

  • Updated the spam filters.

1.5.7

released 11/05/14

  • Updated the spam filters.

1.5.6

released 10/23/14

  • Fixed a bug that caused some legitimate comments to be rejected on comment sub-pages if the site was using the option to break comments into pages but not using permalinks.
  • Minor update to the Dutch Translation (nl_NL).
  • Updated the spam filters.

1.5.5

released 09/24/14

  • Made various minor code improvements.
  • Made some minor tweaks to the translation files and corresponding code.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.5.4

released 09/15/14

  • Added a new improved blacklist function for the Enhanced Comment Blacklist feature, so it no longer uses the built-in WordPress blacklist function - wp_blacklist_check() (which is very old and has some flaws). Enhanced Comment Blacklist feature now works on WP-SpamShield contact forms as well. Please see documentation for more information.
  • Added "Blacklist the IP Address" link to contact form emails.
  • Added a fix to prevent network activation when used in multisite, and added network admin notice to explain. The plugin can be used in multisite just fine, but will need to be activated individually per site for now. Once we can get time to adapt the plugin to multisite more specifically, we can remove this restriction.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.5.3

released 09/09/14

  • Added Dutch Translation (nl_NL). Thank you to Martin Teley for doing the Dutch translation.
  • Improved some of the filters in the spam blocking algorithm.
  • Updated the spam filters.

1.5.2

released 09/05/14

  • Improved some of the filters in the spam blocking algorithm.
  • Increased minimum required WordPress version to 3.5 (which is already almost 2 years old). It's extremely important that users stay up to date with the most recent version of WordPress (currently 4.0) for security and functionality.
  • Updated the spam filters.

1.5.1

released 09/01/14

  • Fixed a bug that caused some legitimate comments to be rejected on comment sub-pages if the site was using both the option to use permalinks and the option to break comments into pages.

1.5

released 08/31/14

  • Added several efficient new trackback spam filters to further improve speed in processing trackbacks and blocking spam, which means even lower server load and improved overall scalability.
  • Updated the text on the spam counter in the dashboard and settings page. Previously it said "spam comments", and now it just says "spam", since the plugin has evolved over time to block multiple types of spam. The counter includes all blocked spam types, not just comments: comment spam, trackback/pingback spam, contact form spam, and user registration spam.
  • Improved human spam protection.
  • Removed the M2 feature as it's an old feature that has been deprecated and is no longer needed.
  • Made several improvements to the filters in the spam blocking algorithm.
  • Updated the spam filters.

Changelog

For a complete list of changes to the plugin, view the Version History/Changelog.

Requires: 3.8 or higher
Compatible up to: 4.1.2
Last Updated: 2015-4-21
Active Installs: 70,000+

Ratings

4.7 out of 5 stars

Support

19 of 19 support threads in the last two months have been resolved.

Got something to say? Need help?

Compatibility

+
=
Not enough data

0 people say it works.
0 people say it's broken.

100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,3,3 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,1,1 100,1,1
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,1,1 100,1,1
100,1,1 50,2,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,2,2 100,1,1 100,2,2 100,2,2 100,3,3 100,2,2 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 50,2,1 100,1,1 100,1,1 67,3,2 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,2,2 100,1,1 100,2,2 100,2,2 100,1,1 100,2,2 100,1,1 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2
100,3,3 100,1,1 100,1,1 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,2,2 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2 100,2,2
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,2,2 100,2,2 100,2,2 100,1,1 100,2,2 100,2,2 100,3,3 100,2,2 100,1,1 100,2,2 100,2,2 100,2,2 100,2,2 100,3,3 100,2,2 100,2,2
100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,2,2 100,2,2 100,3,3 100,3,3 100,2,2 100,1,1 100,1,1 100,1,1 50,2,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,4,4 100,4,4 100,4,4 100,1,1 100,2,2 100,2,2 100,4,4 100,2,2 100,2,2 100,3,3 100,2,2 100,2,2 100,2,2 100,4,4 100,2,2 100,2,2
100,1,1 100,3,3 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 100,4,4 100,4,4 100,4,4 100,1,1 100,2,2 100,2,2 100,4,4 100,3,3 100,2,2 100,3,3 100,2,2 100,2,2 100,2,2 100,4,4 100,2,2 100,2,2
100,1,1 100,1,1 100,2,2 100,1,1 100,2,2 100,1,1 100,2,2 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,1,1 100,4,4 83,6,5 100,4,4 100,4,4 100,1,1 100,2,2 100,2,2 100,4,4 100,2,2 100,2,2 100,3,3 100,2,2 100,2,2 100,2,2 100,4,4 100,2,2 100,2,2
100,2,2 100,6,6 100,4,4 100,2,2 100,2,2 100,2,2 100,4,4 100,2,2 100,3,3 100,4,4 100,2,2 100,2,2 100,2,2 100,5,5 100,2,2 100,2,2