Anti-Comment-Spam and Other WordPress Plugins

Over the Christmas vacation this blog was spammed repeatedly, particularly annoying since I was on a dial-up connection that made downloading all the comment notification emails annoying if nothing else! It seems this is quite a common problem and as usual Google provided an excellent resource for tackling the problem. Read on for a detailed description of what solutions I have employed, but like all anti-spam methods there is always the possibility of false positives, please do let me know if your comment appears to get lost in the ether.

First of all I installed Kitten’s Spam Words which really helped me build up an effective blacklist of words commonly found in spam comments. Comments containing these words are now held back for moderation.

Unfortunately this still did not solve the email notification problem as I still received an email for every comment that entered my moderation queue. 🙁 The next solution I chose was Mark Ghosh’s ThreeStrikes plugin which deletes comments that breach a certain threshold of spammy-ness. Of course this makes the consequences of a false-positive pretty bad (a comment that disappears into the ether) but it seems like the only option unless I want to spend serious chunks of time weeding through the moderation list. 🙁

Whilst I’m writing about useful WordPress plugins, I thought I would also mention other ones that I have found useful.

  • Spelling Checker — uses the aspell binary installed on your server, so doesn’t need an extension to PHP like other spell check solutions I have seen.
  • Linkifier — expands friends and category names to links, so e.g. { Rosie Whitaker } becomes {Rosie Whitaker}
  • ViewLevel — allows you to specify what “level” a logged in user must have in order for a particular post to appear for them. Comes complete with a little padlock icon so your users can see what is “private” to them and what isn’t, although you need to remove an extraneous leading slash in the path name at line 75 for this feature to work.
  • Get Custom Field Values — for the “coffee” and “music” parts of my posts.