Announcing Caesarmail for WordPress

This is my first public WordPress plugin: Caesarmail. It's yet another email obfuscation plugin, but instead of using ASCII or hex code substitutions, it uses random-offset Caesar ciphers. When Caesarmail sees an email link that looks like this:

<a href=" mailto:someone@somewhere.com">email me</a>

it converts it into something that looks like this:

<a href="javascript:degrease('BxvnxwneBxvnFqnAnflxv',9)">email me</a>

The offset is randomly generated with each page view; consequently, the degrease() link is never (or rarely) the same twice.

Caesarmail can be downloaded from here.

To use Caesarmail, simply:

  1. Download and unpack the archive.
  2. Upload the entire Caesarmail folder to your WordPress plugin directory (usually http://yourblog/wp-content/plugins/).
  3. Go to the plugin management page for your WordPress installation – find "Caesarmail" and click "Activate."

To use Caesarmail, all you have to do is include a mailto: link in posts or comments. Caesarmail will automatically convert them for you.

You can test Caesarmail by commenting on this post with a mailto: link, or by mousing over and clicking this link (you can also contact me through that link, obviously).

This is my first plugin, and comments/criticisms/suggestions are more than welcome.

7 Responses to “Announcing Caesarmail for WordPress”

  1. Netwalker Says:

    Does it works on email addresses on sidebar?

  2. Preston Says:

    Not at the moment – I’ll investigate and see if I can get it easily working for the sidebar.

  3. Preston Says:

    It appears that you can use caesarmail in the sidebar, but it’s not automatic. You need to call the function directly, like so:

    <?php 
    $string 
    caesarmail('<a href=" mailto:email@address.com">email link</a>'); 
    echo 
    $string
    ?>


    (Without the space in the mailto: link – I had to add it because caesarmail is encrypting it.)

    The function caesarmail() only takes one argument – the string of text which is to be searched and converted into encrypted email addresses. So if, for example, you wanted to do a list of email addresses, you could do this:

    <?php
    $list 
    '<ul>
    <li> <a href=" mailto:someone@somewhere.com" rel="nofollow">My work address</a>
    <li> <a href=" mailto:somewhere@else.com">My home address</a>
    </ul>'
    ;
    $string caesarmail($list);
    echo 
    $string;
    ?>


    That should work. Let me know if it works out for you.

  4. Netwalker Says:

    Thanks!

    I’ll put it in my blog to test it.

  5. verywide.net » Another Plug for a Plugin… (and more) Says:

    [...] In order to protect email addresses from being harvested, I have added the Caesarmail plugin, which dynamically converts all email addresses using “random-offset Caesar ciphers". This prevents spambots from collecting usable email addresses from pages/comments. Spammers aren’t likely to take the time to decipher encrypted email addresses. [...]

  6. Alex Says:

    Thats fantastic! Should help cut down on the spam we’ve all been getting!

  7. Jonathan Says:

    Does it have a way to implement a noscript tag?

Leave a Reply

You must be logged in to post a comment.

@ somniloquy.org

, , , , , , , ,