Akismet is a popular comment, trackback, pingback spam blocker. Originally it was developed for the WordPress blogging platform; it has since been extended to work on a variety of blogging and forums systems. However the only part of it I really care about is the WordPress plugin as it is one of the ways I protect this site from spammers. Akismet works great1 but there is one thing the developers of Akismet have never seen fit to do which drives me bonkers. Which is to say the only place the Akismet plugin shows you how many comments it has in the spam moderation queue is on the spam moderation queue page. And yet they put some stats for Akismet right there on the WordPress dashboard. In ages long past, I cobbled together a small hack to display those moderation numbers, when I upgraded my site to a more current version of WordPress my hack broke.
This morning I finally fixed it. People more clever than myself could make this into a full fledged plugin, but this little hack is good enough for me. To do this:
- Download a copy of the Akismet plugin for WordPress
- Decompress the zip file
- Open the akismet.php file in your favorite text editor2
- In akismet.php, search for “function akismet_stats()”. It should be around line 510.
- In the akismet_stats function, under the line reading
echo '<h3>'.__('Spam').'</h3>';
add the following code:
$spam_count = akismet_spam_count();
$link = 'edit-comments.php';
if ($spam_count) :
print "<strong><a href="$link?page=akismet-admin" title="Click here to see the moderation queue">Spam in moderation ($spam_count)</a></strong>\n";
endif; - Save your changes.
- Uploaded your edited copy of akismet.php to http://yourblog.com/wp-content/plugins/akismet/ and then follow the normal instructions for installing/activating the Akismet plugin.
With this small hack in place, when Akismet traps some comment spam in its moderation queue the WordPress dashboard will display a link under the Spam in the Latest Activity box. The link will say “Spam in moderation (x)” where x is the number of items in the spam moderation queue. Since WordPress likes to occasionally mangle the display of code in posts, I’ve created a text file with my changes to the akismet_stats function. You download that file here.
Update 2007-04-22: As to be expected, it didn’t take the spammers long to generate some sample data for me to create a screenshot of my hack. Enjoy!
1 Particularly with the Bad Behavior anti-spam plugin added to it.
2 E.g. Kate
I meant to include a screenshot of what the link looks like but at the moment my spam moderation queue is empty. Yeah, Akismet! 😀 Once I’ve got some spam in there, I’ll try to remember to come back and update this post with a screenshot.