emObA – Email Obfuscator Advanced

Version 2.0

Author:Kim Kirkpatrick (profile at wordpress.org)
WordPress version required:2.8
WordPress version tested:3.1.4
Plugin version:2.0
Added to WordPress repository:17-11-2009
Last updated:05-12-2010
Warning! This plugin has not been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.
Rating, %:0
Rated by:0
Plugin URI:
Total downloads:6 471
Active installs:400+
plugin download
Click to start download

emObA - Email Obfuscator Advanced - effectively and automatically makes it difficult for spambots to harvest email addresses from your WordPress-powered blog. Email addresses may be placed in posts, comments, and pages, as html links, in a special "easy email" form, or as the address itself, and they will be protected by emObA automatically. All email addresses appearing on your blog will appear on the screen (if JavaScript is enabled) as active links to normal, valid, and correct email addresses, but to spambots they will have no recognizable features. (As usual, the actual email appears in the status bar when hovering.)

emObA recognizes, and produces obfuscated active (click-to-send) email links for,

  • standard email links (<a href="mailto:you@example.com">Real Name</a>), allowing class and style attributes (but ignoring other attributes), and allowing an email Subject using the syntax mailto:you@example.com?subject=....

  • the special "easy to write" form [EMAIL Real Name | you@example.com], also allowing the ?subject=... ] syntax. (Earlier versions' much more fragile [Real Name] you@example.com remains available if LEGACY is chosen.)

  • a bare email address you@example.com, with or without "mailto:" in front of it. (?subject= syntax not allowed here.)

These will all appear as active email links displaying "Real Name". In the cases of a bare email link (one which has no Real Name) or a link in which the Real Name is the email itself, the link will show as the email displayed in human-readable form, eg you [@] example [.] com, where the [@] and [.] are either text symbols or graphic images (as set in administration), hiding the email addresses from spambots.

If JavaScript is not enabled, the email will appear in obfuscated but human-readable form but the link will not be active.

The email addresses occur in the HTML source only in a well-hidden encoding. The email address is converted to hexadecimal and appears only as the value of a JavaScript variable. That encoded email is separated in the JavaScript from the telltale mailto: to further confuse spambots.

I believe any legitimate email will be recognized. However, no attempt at validation is made -- certain illegally formed addresses will also be recognized, for example, ones containing two successive .'s. (Note: Legal characters before the @ are !#$%&'*+/=?^_{|}~- and `.)

I've designed this plug-in with "real name" emails in mind -- <a href="mailto:you@example.com">Real Name</a> or [EMAIL Real Name | you@example.com], which display as Real Name. This will follow whatever styling you apply to your text and to links. However, if you primarily obfuscate lists of bare email addresses -- you@example.com -- you may not be satisfied with the appearance. They will appear with either glyphs or specified text symbols in place of @ and .. The color and weights of the glyphs are fixed (though they do change size with surrounding text), and they don't look exactly like the font symbols they replace. And if text symbols are used, they certainly don't look exactly like @ and ..