admin-plugins author calendar category facebook post rss search twitter star star-half star-empty

Tidy Repo

The best & most reliable WordPress plugins

Free Email Address Encoder

Email Address Encoder

Plugin Author: Till Krüss

Jay Hoffmann

September 13, 2013 (modified on May 16, 2018)

Page, Security

If you link to your email, or even if you just include it in text form, it may be possible for spammers to harvest your address and spam you to no end. There are some solutions out there, the simplest of which is to simply list it differently or not link to your email (me [at] for instance), but this can be annoying. The other option is to encode your email addresses so that it is human readable, but invisible to spammers. That’s what Email Adress Encoder does.

What’s It Do?

Email Address Encoder will automatically convert any email addresses on your site into decimal and hexadecimal entities. In plain English, that just means that your email addresses will be protected. There are no options to set-up, and both existing and new email addresses added will be converted in posts or pages, even in custom post types. To me, what makes this plugin unique is that it does not add any extra javascript, or complicated shortcodes, or even any options. It just works.

For the developer-minded out there, there are also functions to help you customize the output.

How’s It Work?

Once you install and activate the plugin, it will just start working. Email Address Encoder automatically filters through your post content to find any email addresses and actually any “@” signs, then swaps them out for encoded versions. If you use Firefox or Safari and select “View Source” (not in developer tools), on a page that you have an email, then you’ll see the plugin at work.

The Encoding in action

SImple encoding, but it works

There is also a filter that you can use in order to enable email address encoding when filters are supported. It looks like this:

add_filter($tag, 'eae_encode_emails');

If you’d like to disable the encoder on a specific piece of content, there’s another filter for that.

add_filter('eae_at_sign_check', '__return_false');

If you have email addresses that lie outside of your content, there are a couple of ways to ensure that any address can be encoded.

// You can pass a string through a function

<code>$text = eae_encode_emails($text);</code>.

// Or you can echo a single email address

echo eae_encode_str('');

There are a few more functions, and more information on the plugin’s FAQ if you are curious. Other then that, the plugin keeps things very, very simple.

Costs, Caveats, Etc.

There actually is a built-in WordPress function to encode emails, antispambot(). However, the Email Address Encoder speeds things up a bit and uses a slightly more advanced hexadecimal entity.

Email Address Encoder is completely free and will be updated when necessary. The author is very active on the support forums, so please refer there if you run into any trouble.


Plugin Info
  • Downloads: 1,353,810+
  • Downloads trend (30d): -16.2%
  • Active installations: 100,000+
  • Rating:
  • Last Update: November 27th, 2023
  • Download Plugin for Free