Design Meets Code

Design Meets Code

WordPress · PrestaShop

  • Startseite
  • WordPress
  • PHP / Datenbanken
  • Ubuntu
  • Prestashop
  • Verschiedenes
  • Grafik
  • Glossar
You are here: Home / WordPress / WordPress: Emails per Shortcode verschlüsseln

WordPress: Emails per Shortcode verschlüsseln

24. Februar 2015 2 Comments

Mit folgendem Code Snippet in der functions.php lassen sich emails verschlüsseln, so dass die meisten Spambots sie nicht auslesen können.

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' );

Dieser Code benutzt die WordPress Funktion antispambot(); codiert Zeichenketten.

Um den Shortcode auch in einem Textwidget nutzen zu können, muss noch folgender Filter in die functions.php geschrieben werden

add_filter( 'widget_text', 'shortcode_unautop' );
add_filter( 'widget_text', 'do_shortcode' );
[email]john.doe@mysite.com[/email]

Fügt man noch den folgenden Filter zur functions.php hinzu, dann kann die Email auch normal ausschreiben, sie wird jedoch im Quelltext verschlüsselt.

 <?php antispambot( $emailaddy, $hex_encoding ) ?> 
<?php
echo antispambot( 'john.doe@mysite.com' );
?>

Wer nicht selber in den Code eingreifen möchte, installiert einfach das Plugin Email Address Encoder, das automatisch alle normal ausgeschriebenen email Adressen im Quelltext verschlüsselt:
https://wordpress.org/plugins/email-address-encoder/

Filed Under: WordPress Tagged With: Anti-Spam, Email, Shortcode, Spam

Comments

  1. Jan says

    20. November 2015 at 12:02

    Das fehlt was im Text oder?
    „Fügt man noch den folgenden Filter zur functions.php hinzu, dann kann die Email auch“
    und irgendwie fehlt der Shortcut als solches auch

    Antworten
    • eno says

      20. März 2016 at 10:14

      Ja, da hast du Recht und sorry für die späte Antwort. Es lassen sich dann die emails normal ausschreiben, sie sind dann aber im Quelltext verschlüsselt. Sehr komfortabel erledigt diese Aufgabe auch das Plugin Email Address Encoder. Alle Emails werden mit diesem Plugin automatisch im Quelltext verschlüsselt … sehr praktisch! Ein Eingriff in den Code ist damit nicht mehr notwendig.
      https://wordpress.org/plugins/email-address-encoder/

      Antworten

Schreibe einen Kommentar Antwort abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Anzeige

Themen

Apache BuddyPress chmod chown Code Snippets Concatenation Operator Conditional Statement Custom Post Types Datenbank Email Enfold Escape Zeichen Foren genesis Grid View htaccess JavaScript Layout Builder List View Medien MegaShop Mitgliederbereich MySQL PHP PHP Anfänger PHP Variablen Plugins Prestashop Prestashop 1.5 Prestashop 1.6 Prestashop 8 Prestashop Module Registrierung RSS Feed s2member Schreibrechte Server ssl Strings Tipps Windows Windows 10 WooCommerce WooCommerce Sortierung WordPress
Anzeige

Letzte Kommentare

  • dmc zu Woocommerce: Produktbewertungen deaktivieren
  • medienplus zu Woocommerce: Produktbewertungen deaktivieren
  • Martin zu CSS: Automatische Silbentrennung in einzelnen Wörtern verhindern
  • Martin zu CSS: Automatische Silbentrennung in einzelnen Wörtern verhindern
  • Klaus zu Woocommerce: Shop Seiten neu generieren

Informationen

  • Kontakt
  • Datenschutzerklärung
  • Impressum
  • Cookie-Richtlinie (EU)
  • Kontakt
  • Datenschutzerklärung
  • Impressum
  • Cookie-Richtlinie (EU)
Anzeige