Email Address Encoder

Beschreibung

Ein leichtgewichtiges Plugin zur Abwehr von Robots, die Mail-Adressen sammeln. E-Mail-Adressen und Mailto-Links werden zum Schutz in dezimale und hexadezimale Einheiten zerlegt. Funktioniert in Beiträgen, Seiten, Kommentaren, Auszügen und Text-Widgets. Keine Benutzerschnittstelle, kein Shortcode, kein JavaScript – nur eine einfache Spam-Abwehr.

Installation

Eine detaillierte Installationsanleitung findest du unter Standard-Installationsablauf für WordPress Plugins (en.).

  1. Lade das Verzeichnis /email-address-encoder und seinen Inhalt in das Verzeichnis /wp-content/plugins/.
  2. Melde dich im Back End deiner WordPress-Installation an und aktiviere das Plugin dort im Menü Plugins.
  3. Fertig. Dieses Plugin hat keine Benutzerschnittstelle oder Einstellungsmöglichkeiten.

FAQ

Installationsanleitung

Eine detaillierte Installationsanleitung findest du unter Standard-Installationsablauf für WordPress Plugins (en.).

  1. Lade das Verzeichnis /email-address-encoder und seinen Inhalt in das Verzeichnis /wp-content/plugins/.
  2. Melde dich im Back End deiner WordPress-Installation an und aktiviere das Plugin dort im Menü Plugins.
  3. Fertig. Dieses Plugin hat keine Benutzerschnittstelle oder Einstellungsmöglichkeiten.
Was macht dieses Plugin?

Dieses Plugin verwendet die Hooks für WordPress-Filter wie the_content, widget_text und andere (zusätzliche Filter können hinzugefügt werden). Für jeden Filter werden schnelle (deaktivierbare) Suchen nach dem @-Zeichen durchgeführt. Wird ein @-Zeichen gefunden, prüft ein (überschreibbarer) Regulärer Ausdruck auf E-Mail-Adressen in Klartext. Gefundene E-Mail-Adressen werden mit dem Rückgabewert von eae_encode_str() (veränderbar) ersetzt, womit die E-Mail-Adressen verschleiert und gegen das Auslesen von E-Mail-Adressen sammelnden Robots geschützt werden. Diese Funktion ist geringfügig schneller als WordPress‘ eingebautes antispambot() und verwendet zusätzlich hexadezimale Einheiten.

Wie kann ich mich vergewissern, dass das Plugin arbeitet?

Du kannst dazu nicht Firebug, Web Inspector oder Dragonfly verwenden, weil sie die dezimalen/hexadezimalen Einheiten in Klartext umwandeln. Um sicherzustellen, dass deine E-Mail-Adressen verschlüsselt werden, verwende einen Rechts-/Sekundär-Klick auf der Seite, klicke auf „Quelltext anzeigen“, „Seitenquelltext anzeigen“ oder „Quelltext“ und suche nach einer beliebigen E-Mail-Adresse im Klartext. Vergewissere dich, dass du zum Prüfen in Firefox „Seitenquelltext anzeigen“ und nicht „Seiteninformationen anzeigen“ auswählst.

Wie kann ich statt dessen die in WordPress enthaltene Funktion `antispambot()` verwenden?

Du kannst dem Filter eae_method jede gültige Rückruffunktion zuweisen, um sie auf die gefundenen E-Mail-Adressen anzuwenden: add_filter('eae_method', function() { return 'antispambot'; });

Wie kann ich andere Stellen meiner Website filtern?
  • Wenn der Inhalt die Verwendung von WordPress-Filtern unterstützt, registriere dazu die Funktion eae_encode_emails(): add_filter( $tag, 'eae_encode_emails' );.
  • Ist der Inhalt ein PHP-String, lass ihn durch die Funktion eae_encode_emails() laufen: $text = eae_encode_emails( $text );.
  • Möchtest Du eine einfache Mail-Adresse verschlüsseln, verwende die Funktion eae_encode_str(): <?php echo eae_encode_str( 'name@domain.com' ); ?>

Aus Performancegründen verschlüsselt das Plugin nicht die gesamte Website, sondern nur den Inhalt der folgenden WordPress-Filter: the_content, the_excerpt, widget_text, comment_text, comment_excerpt.

Wie kann ich das Muster des Regulären Ausdrucks ändern?

Du kannst das Muster mit dem Filter eae_regexp überschreiben: add_filter( 'eae_regexp', function () { return '/^pattern$/'; } );

Wie kann ich die Priorität der Standard-Filter ändern?

Die Standard Filter-Priorität ist 1000 und durch Definition der Konstante EAE_FILTER_PRIORITY kannst du diesen Wert anpassen: define( 'EAE_FILTER_PRIORITY', 99999 );. Die Konstante muss definiert werden, bevor das Plugin geladen wird, z. B. in deiner wp-config.php oder einem Must-Use Plugin (auch bekannt als mu-Plugin).

Wie kann ich die Prüfung des @-Zeichens deaktivieren?

Folgendermaßen: add_filter( 'eae_at_sign_check', '__return_false' );

Rezensionen

Exactly as described.

No flowery language – it works, it’s good, it’s simple & lightweight. Thanks!

NB: only applies to page/post content – if you have plugins like social share buttons which hold the parameters, these won’t be obfuscated.

Excellent, very useful plugin

Very useful plugin to prevent spam emails. The encoded email is visible in the html source code (not in the browser tools). Works perfectly. Thanks a lot for your work and this helpful and useful plugin!

Disappointed.

Just installed and activated this plugin. went to look at the source code and the mail address are still no encoded.Disappointed.

Perfect!

It just doesn’t get any easier or cleaner than this. Well done!

Lies alle 87 Rezensionen

Mitwirkende & Entwickler

„Email Address Encoder“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„Email Address Encoder“ wurde in 5 Sprachen übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „Email Address Encoder“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Changelog

1.0.5

  • Fehler unterbinden, wenn eae_encode_emails() keinen string enthält.

1.0.4

  • Konstante EAE_FILTER_PRIORITY hinzugefügt, um die Standard-Filterpriorität anzupassen

1.0.3

  • Filter hinzugefügt, um die Verschlüsselungsfunktion zu überschreiben
  • Zufälligkeit der Verschlüsselungsfunktion verbessert
  • Geschwindigkeit durch einen schnelle Prüfung auf Vorkommen des @-Zeichens verbessert

1.0.2

  • Filter hinzugefügt um Regulären Ausdruck zu überschreiben

1.0.1

  • Wirkt sich jetzt auch auf Seiten-, Beitrags und Kommentar-Auszüge aus.

1.0

  • Erstveröffentlichung