kulturbanause Blog

Responsive Design, WordPress, Konzeption, HTML, CSS, JS & UX/UI …

E-Mail-Verschlüsselung in WordPress – antispambot()

Mit Hilfe der antispambot()-Funktion von WordPress können u.a. E-Mail-Adressen verschlüsselt werden. Das die Funktion nach wie vor eher unbekannt ist, liegt sicher auch an der unglücklichen Bezeichnung. Denn der Name antispambot() erlaubt kaum Rückschlüsse auf die Funktionsweise. Doch mit wenigen Handgriffen kann das Feature sinnvoll in ein Projekt integriert werden.

Workshops und Seminare von kulturbanause

Visual Prototyping, Responsive Design, CSS Grid & Flexbox, WordPress, Adobe XD, HTML & CSS Grundlagen, Website-Optimierung …

Jetzt Frühbucher-Rabatte sichern!

Was genau macht antispambot()?

antispambot() codiert Zeichenketten. Eine E-Mail-Adresse die an die Funktion übergeben wurde, kann anschließen von vielen Spam-Bots nicht mehr aus dem HTML-Code ausgelesen werden.

Wenn ihr folgendes Snippet im Template einsetzt


<?php echo antispambot('info@kulturbanause.de'); ?>

erzeugt WordPress daraus folgenden HTML-Code:


&#105;&#110;&#102;o&#64;k&#117;l&#116;&#117;rb&#97;&#110;a&#117;s&#101;&#46;d&#101;

Die meisten(!) Spam-Bots können damit nichts anfangen.

E-Mail-Adressen über Shortcodes verschlüsseln

Der WordPress-Codex bietet im Zusammenhang mit der soeben kennengelernten Funktion ein interessantes Snippet für einen Shortcode an. Kopiert zunächst folgenden Code in die functions.php des Themes, oder verwendet ein seitenspezifisches Plugin:


function wpcodex_hide_email_shortcode( $atts , $content = null ) {
	if ( ! is_email( $content ) ) {
		return;
	}

	return '<a href="mailto:' . antispambot( $content ) . '">' . antispambot( $content ) . '</a>';
}

add_shortcode( 'email', 'wpcodex_hide_email_shortcode' );

Anschließend kann über den Shortcode eine E-Mail-Adresse verlinkt und verschlüsselt werden. Die Verwendung im WordPress-Editor sieht also beispielsweise so aus:

[email]info@kulturbanause[/email]

Quellen / Links

Jetzt bist du gefragt!

Hast du Anregungen, Ergänzungen, einen Fehler gefunden oder ist dieser Beitrag nicht mehr aktuell? Dann freuen wir uns auf deinen Kommentar.

Du kannst diesen Beitrag natürlich auch weiterempfehlen. Wir sind dir für jede Unterstützung dankbar!

Unterstützung bei WordPress-Projekten

Unsere WordPress Agentur ist auf die Entwicklung maßgeschneiderter WordPress-Themes und -Websites spezialisiert. Wenn du Unterstützung bei der Planung, Gestaltung und Entwicklung eines Projekts benötigst, helfen wir gerne weiter.
WordPress-Leistungsangebot →

Das könnte dich auch interessieren

4 Kommentare

  1. Marc

    Verfasst am 21. Februar 2015 um 22:16 Uhr.

    Sehr sehr interessant!
    Ich habe vor ein paar Wochen eine extra Funktion in mein Projekt eingefügt, die das gleiche bewerkstellig. Wieder was dazugelernt.

    Danke
    Marc

  2. Christoph

    Verfasst am 16. April 2015 um 10:27 Uhr.

    Hallo,
    was bedeutet denn „die meisten Spambots können nichts damit anfangen“? Also wie viel % können damit was anfangen und wie viele ca. nicht? Ist denn irgendwo notiert, ob sich die Verschlüsselung dynamisch verändern wird? Denn sonst ist es ja eigentlich nur noch eine Frage der zeit, bis die Bot-Entwickler aufrüsten, sobald sie ein Schema erkannt haben.

    Danke aber für das Plugin!

    VG
    Christoph

  3. marko

    Verfasst am 21. Juni 2015 um 0:19 Uhr.

    Naja das ist nicht wirklich verschlüsselt :D html entity umwandeln ist nicht schwer.
    Ich würde eher die Email mit JS ins HTML schreiben zwar steht dann auch irgendwo die Email aber die Bots müssten dazu die JS Datei öffnen.

    Oder einfach ein Kontaktformular mit Captcha :D

  4. Evich

    Verfasst am 31. Juli 2016 um 18:23 Uhr.

    Hallo und danke für den guten Tipp.
    Unter Punkt 3.3 des Blogs https://www.hosteurope.de/blog/15-moeglichkeiten-die-e-mail-adresse-geschuetzt-darzustellen/# steht, dass Hex-Codierung besser als URL-Codierung (ASCII) wirke, zumal es die mailto-Anweisung mit codiert.

    In der WordPress-Code-Referenz https://developer.wordpress.org/reference/functions/antispambot/ lese ich, dass man Hex-Endcoding mittels Integer-Wert 1 anschalten kann. Wo muss ich den Integer-Wert einfügen oder ändern, damit die Email-Adressen per Hex-Codierung geschützt werden?

Kommentar verfassen

Dieser Blog lebt vom Feedback der Besucher! Also los, mach mit!
Bitte habe Verständnis dafür, dass Kommentare die mit dem Inhalt dieses Beitrags nichts zu tun haben, gelöscht werden.