Title: RobArt Email Guard
Author: Rob Art
Published: <strong>September 26, 2026</strong>
Last modified: September 26, 2026

---

Search plugins

![](https://ps.w.org/robart-email-guard/assets/banner-772x250.png?rev=3714098)

![](https://ps.w.org/robart-email-guard/assets/icon-256x256.png?rev=3714098)

# RobArt Email Guard

 By [Rob Art](https://profiles.wordpress.org/robword/)

[Download](https://downloads.wordpress.org/plugin/robart-email-guard.0.0.5.zip)

 * [Details](https://wordpress.org/plugins/robart-email-guard/#description)
 * [Reviews](https://wordpress.org/plugins/robart-email-guard/#reviews)
 *  [Installation](https://wordpress.org/plugins/robart-email-guard/#installation)
 * [Development](https://wordpress.org/plugins/robart-email-guard/#developers)

 [Support](https://wordpress.org/support/plugin/robart-email-guard/)

## Description

Publish an email address on a web page and spam bots will find it. They crawl pages
looking for anything that looks like an address, add it to their lists, and the 
spam follows. The usual answers are bad: an image of your address can’t be clicked
or copied, a contact form hides the address but adds friction, and writing “name[
at] example [dot] com” looks unprofessional and still doesn’t stop a determined 
scraper.

**RobArt Email Guard hides your email addresses from automated harvesters while 
keeping them a normal, clickable link for the people you actually want to reach.**

There is no such thing as a method that defeats every scraper — a bot that runs 
a full browser and executes all the JavaScript can, in principle, see anything a
human can. But the vast majority of harvesting is done by simple crawlers that read
the raw HTML. Email Guard defeats those completely, and offers a stronger method
that stops all but the most targeted, resource-heavy bots.

#### How it protects an email

Email Guard offers three methods, from simple to strongest. You pick a site-wide
default and can override it per email.

 * **HTML entity encoding** — the address and its `mailto:` link are written as 
   HTML character entities: a wall of numbers in the page source that means nothing
   to a crawler, but which the browser turns back into a normal clickable link for
   the visitor. No JavaScript required.
 * **JavaScript hydration** — the page source contains no email address at all, 
   not even encoded. A tiny script rebuilds the clickable link in the browser after
   the page loads, so a crawler that only reads raw HTML finds nothing to harvest.
 * **Click to reveal (Pro)** — the strongest option: the page contains only an opaque
   token and a small “Reveal email” button. The address is fetched from your server
   only after a real visitor clicks. Automated harvesters don’t click, so they never
   trigger it.

#### Ways to use it

 * **Shortcode** — `[raeg_secure_email address="you@example.com"]` anywhere shortcodes
   run. Add `text="Email us"` for custom link text, or `method="encode"` / `"js"`/`"
   reveal"` to override the site default for that one email.
 * **Automatic protection** — switch on auto-scan and Email Guard finds and protects
   every email address and `mailto:` link in your posts and pages automatically,
   with no shortcode needed.
 * **Protected Emails page** — a built-in report lists every email found in your
   content, where it appears, and whether it is protected, with a one-click re-scan.

#### Styling

Protected links can inherit your theme’s link styles, or you can style them from
the settings page — link colour, hover colour, underline (solid, dotted, or dashed)
and bold — with no CSS required. Every protected link also carries a `raeg-email`
CSS class for theme-level styling.

#### Free vs Pro

The free plugin includes HTML entity encoding, JavaScript hydration, the shortcode,
automatic scanning, the Protected Emails report, and the styling controls. Pro adds
the Click-to-Reveal method with its own appearance options (inline link or compact
pill) and custom button text.

### Uninstall

When you delete RobArt Email Guard from the Plugins screen, its settings and stored
options are removed from the database. Your content is never modified — the plugin
protects emails at display time, so deleting it simply returns your pages to showing
addresses normally. No custom tables are left behind.

### External Services

RobArt Email Guard does not send any data to external services during normal operation.
All email protection happens on your own site.

The Click-to-Reveal feature (Pro) makes a request to your own site’s built-in WordPress
endpoint (admin-ajax) when a visitor clicks to reveal an address — this stays entirely
within your own server and involves no third party.

If you activate a Pro licence, licence validation and update delivery contact the
RobArt licence server at robsnow.eu; this happens only for Pro licence holders and
only when checking a licence or fetching a Pro update.

## Screenshots

[⌊The dashboard — protected-email count and live examples of each protection method.⌉⌊
The dashboard — protected-email count and live examples of each protection method
.⌉[

The dashboard — protected-email count and live examples of each protection method.

[⌊Settings — choose a protection method, turn on automatic scanning, and style the
links.⌉⌊Settings — choose a protection method, turn on automatic scanning, and style
the links.⌉[

Settings — choose a protection method, turn on automatic scanning, and style the
links.

[⌊Protected Emails — every email found in your content, where it appears, and its
status.⌉⌊Protected Emails — every email found in your content, where it appears,
and its status.⌉[

Protected Emails — every email found in your content, where it appears, and its 
status.

## Installation

 1. Upload the `robart-email-guard` folder to `/wp-content/plugins/`, or install it
    from the Plugins screen.
 2. Activate the plugin through the **Plugins** menu in WordPress.
 3. Go to **Email Guard  Settings** to choose a protection method and, optionally, 
    switch on automatic protection.
 4. Add an email with the `[raeg_secure_email address="you@example.com"]` shortcode,
    or leave auto-scan on to protect every email in your content automatically.

## FAQ

### Will the email still be clickable for real visitors?

Yes. Every method produces a normal `mailto:` link (or, for Click-to-Reveal, a link
built the moment the visitor clicks). Clicking opens the visitor’s email program
exactly as an ordinary email link would.

### Is any method completely scraper-proof?

No, and any plugin that claims otherwise is overstating it. A bot that runs a full
browser and executes JavaScript can see whatever a person can. What Email Guard 
does is defeat the ordinary crawlers that do the overwhelming majority of harvesting,
and — with Click-to-Reveal — stop all but the most targeted, resource-heavy bots.

### Which method should I use?

JavaScript hydration is a good default: it leaves no address in the page source 
and works invisibly. Choose HTML entity encoding if you need protection with no 
JavaScript at all. Choose Click-to-Reveal (Pro) for the strongest protection where
a small extra click is acceptable.

### Do I have to add a shortcode to every email?

No. Turn on automatic protection and every email address and `mailto:` link in your
posts and pages is protected without any shortcodes. Use the shortcode when you 
want to control a specific email individually.

### Will it work with my theme or page builder?

The shortcode and automatic scanning work with any theme. Automatic scanning protects
emails in your post and page content; emails placed directly in theme templates 
or some page-builder widgets are best wrapped in the shortcode.

### Does deleting the plugin remove its data?

Yes. Uninstalling removes the plugin’s settings and options. Your content is untouched.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“RobArt Email Guard” is open source software. The following people have contributed
to this plugin.

Contributors

 *   [ Rob Art ](https://profiles.wordpress.org/robword/)

[Translate “RobArt Email Guard” into your language.](https://translate.wordpress.org/projects/wp-plugins/robart-email-guard)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/robart-email-guard/),
check out the [SVN repository](https://plugins.svn.wordpress.org/robart-email-guard/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/robart-email-guard/)
by [RSS](https://plugins.trac.wordpress.org/log/robart-email-guard/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.0.5

 * Protected Emails now lists every address the plugin actually protects, wherever
   it appears — theme templates (footers, headers), page-builder widgets, and Click-
   to-Reveal links (whose address is never written into the page) — not just addresses
   inside post and page content. Each is recorded as your pages are viewed on the
   front end; use Re-scan to refresh the list.
 * Fixed: addresses written as “mailto:” links are now listed as the clean email
   address (no “mailto:” prefix, URL parameters, or HTML-encoded characters), and
   bare “mailto:” addresses in text are picked up too.

#### 0.0.4

 * Protected Emails now works with Elementor and other page builders — the report
   reads the same content your visitors see, so builder-only pages are covered.
 * Auto-scan no longer mistakes image filenames like “logo@2x.png” for email addresses.
 * Click-to-Reveal: new “Button label” option — keep the original link text (best
   for lists of named links) or use your own custom text.
 * Reveal links and pills now show an envelope icon.
 * Dashboard widget redesigned with live protection stats.
 * Various admin polish and housekeeping.

#### 0.0.3

 * The Protected Emails page now updates automatically when you add, edit, or remove
   content — no manual re-scan needed.

#### 0.0.2

 * First public release.
 * Three protection methods: HTML entity encoding, JavaScript hydration, and Click-
   to-Reveal (Pro).
 * Automatic scanning, the `[raeg_secure_email]` shortcode, and a Protected Emails
   report.
 * Link styling controls: colour, hover colour, underline style, and bold.
 * Full translation template included.

#### 0.0.1

 * First release.

## Meta

 *  Version **0.0.5**
 *  Last updated **22 hours ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.2 or higher **
 *  Tested up to **7.1.2**
 *  PHP version ** 8.0 or higher **
 * Tags
 * [anti-spam](https://wordpress.org/plugins/tags/anti-spam/)[email](https://wordpress.org/plugins/tags/email/)
   [mailto](https://wordpress.org/plugins/tags/mailto/)[obfuscation](https://wordpress.org/plugins/tags/obfuscation/)
   [scraper](https://wordpress.org/plugins/tags/scraper/)
 *  [Advanced View](https://wordpress.org/plugins/robart-email-guard/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/robart-email-guard/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/robart-email-guard/reviews/)

## Contributors

 *   [ Rob Art ](https://profiles.wordpress.org/robword/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/robart-email-guard/)

## Donate

Would you like to support the advancement of this plugin?

 [ Donate to this plugin ](https://paypal.me/robsnowcreative)