Preventing email spam with the built-in WordPress email obfuscator
If you want to give people the option to contact you by email, you need to display your email address on your site. But by doing so, you are putting yourself at the mercy of the low-lives out there harvesting email addresses so they can spam you with products that will enlarge certain parts of your body.
To use this template tag, you need to do the following:
- Make sure your email address is in your user profile.
- Put the following template tag wherever you want the address to appear:
1<?php echo antispambot(get_the_author_email()); ?>
The WordPress codex says that this tag works as follows:
The function antispambot() above parses the e-mail address passed by get_the_author_email() (this is the same as the_author_email(), except it returns rather than displays the author’s e-mail address). Use of the echo command displays the output of antispambot(). An interesting feature is it encodes only portions of an address, and does so randomly so the letters encoded are different each time the page loads, adding a little more firepower to the spam protection arsenal.
My questions are:
- Since this pulls an author related parameter, will the email address change according to the author? (Probably.)
- Can this even be displayed in the sidebar?
It seems that if it is author related, it is not a good solution for displaying a website email address that does not belong to a specific person, like email@example.com. But if you do have a multi-author site and you want to display the authors’ email addresses, this seems like a great way to do that without feeding the spam wolves.
Category: Good Blogging Practice