Old but not busted … – Dieser Inhalt wurde vor mehr als 11 Jahren publiziert. Die Korrektheit und Verfügbarkeit von Links können leider nicht gewährleistet werden.

Schon seit einiger Zeit bin ich auf der Suche nach einer ‚einfachen‘ Möglichkeit, Klartext E-Mail-Adressen auf WP-Seiten (bspw. im Impressum) oder in WP-Artikeln ‚einfach‘ zu verschlüsseln, bzw. unkenntlich zu machen, um SPAM (halbwegs vernünftig) zu vermeiden.
Nachdem ich dann einige Plugins wie bspw. EmailShroud, Transpose Email und Obfuscate-Email ausprobiert hatte und mit allen nicht so ganz zufrieden war, bin ich vor ein paar Tagen durch einen Artikel bei dynamicinternet auf die WP-eigene Funktion antispambot() gestolpert.

Diese ‚verschleiert‘ die darzustellende (und ihr übergebene) Mail-Adresse in zufälliger Form und hat somit schon die Hälte der Funktionalität, die ich erwarte. Nur einen „mailto:“-Link bastelt sie nicht und es muss leider auch für die Benutzung der reine PHP-Quelltext im WP-Content benutzt werden, was ein Plugin, wie bspw. Exec-PHP, voraussetzt.

So viel Kuddelmuddel und Aufstand wegen so einer einfachen Sache, wie dem Absichern einer Mail-Adresse? – Es geht auch einfacher…! 🙂

Wie heute schön beim Smashing Magazine im Artikel „Mastering WordPress Shortcodes“ zu lesen war, ist es ultra-einfach einen kleinen und funktionierenden Shortcode in seinem verwendeten Theme einzubinden.

Und hier ist nun mein Code-Schnipsel für obiges ‚Obfuskieren‘:

/* WP-Shortcode: obfuscate (secure) email by http://www.sok.ai */
function SecureMail($atts, $content = null) {
	extract(shortcode_atts(array(
		"mailto" => 'mailto:'
	), $atts));
	$asb = antispambot($content);
	$mailto2 = antispambot($mailto);
	return '<a href="mailto:'.$mailto2.'">'.$asb.'</a>';
}
add_shortcode('sm', 'SecureMail');

Diesen einfach, bspw. am Ende, der functions.php im Themeverzeichnis anfügen und mittels folgenden Shortcodes im WP-Content benutzen:

[sm mailto="bla@blubbbb.com"]bla@blubbbb.com[/sm]

Die Ausgabe ist dann wie folgt:
[sm mailto=“bla@blubbbb.com“]bla@blubbbb.com[/sm]

So viel noch auf die Schnelle… – Viel Spaß beim Ausprobieren & n8i

Update 18. Februar 2009
plus: $mailto2 = antispambot($mailto);
Denn natürlich muss auch die mailto-Adresse ‚verschleiert‘ werden, was in der Originalversion dieses Artikels (und des obigen Code-Blocks) nicht der Fall war.

Weitere (vllt.) interessante Beiträge:

Meinungsbild zu diesem Beitrag …
  • echt cool 
  • interessant 
  • hilfreich 
  • geht so 
  • laaangweilig 

2 Gedanken zu „Mailadressen in WordPress schützen

    • Danke für die Blumen! 🙂
      Du solltest jedoch auf jeden Fall den Kommentar von Lorelle bei wpengineer.com noch lesen. – So nett die antispambot-Funktion im ersten Moment auch aussehen mag, so einfach scheint es wohl für die SPAM-Bots zu sein, jegliche normal-codierte (also für Browser etc. noch lesbare) Mailadressen auszulesen… 😐

Kommentare sind geschlossen.