reduce email address harvesting

 It's generally a bad idea to put an email address on a website. You generally want a contact form with a captcha to avoid spam submissions, and you want to geolock the contact form to only relevant countries. If you aren't fulfilling orders outside your country, simply geolock the contact form. I'd suggest the wordpress plugin IQ block country.

If however it's not an option and you need an email address on your website, you can use HTML or an image to confound the crawlers. Unfortunately they will see the "mailto:" HTML code so you have to remove that. So your email address would have to be non-clickable but at least human-readable. To do this, replace space and "at" with HTML character codes, like so:

name @ domain

the part   puts a nonbreaking space after the local-part (the part before the at) and after it.

The @ is the at-sign.

You can also replace   with this:

<span style="width:0px;">&nbsp;</span> to make the non-breaking spaces to have zero width, and hence, not be visible.

You can also replace the dots (periods/full stops) in the email address with &#46;

The result is a human-readable email address which will confuse less-advanced crawlers. I implemented this on one of my websites where I was getting about 10-20 spams per day and it reduced to 1-2 per day.


Popular posts from this blog

Setting the PHP version