WordPress: Newsletter verschicken

Wenn man eine kommerzielle Website betreibt - ein populärer Blog, ein Shop oder eine Darstellung der eigenen Firma im Web -, möchte man vielleicht seinen Lesern oder Kunden mehr oder minder regelmäßig Informationen per E-Mail schicken, sogenannte Newsletter.

Es gibt zahlreiche Plugins für WordPress um das Erstellen von Newslettern und das Verwalten von Empfängern zu implementieren. Besonders populär sind MailPoet (ca. 300.000 aktive Installationen für die 2er Version, ca. 30.000 für die 3er Version) oder Newsletter (200.000 aktive Installationen).

Das Plugin Newsletter von Stefano Lissa & The Newsletter Team

Wir werden uns mit dem Plugin Newsletter beschäftigen, das wir gut kennen und in zahlreichen WordPress-Installationen eingerichtet haben.

Die wichtigsten Features in Kürze aufgelistet

  • Anmelde-Formular als Widget oder Shorcode
  • Double Opt-in Verfahren
  • Empfänger-Profilverwaltung und Unsubscribe-Link
  • Drag & Drop Template Tool
  • Einfache Verwaltung von Empfängerlisten
  • Premium Version: WooCommerce Integration, Erweiterte Statistiken

Der Installations-Wizard in 4 Schritten

Erst kürzlich eingeführt, bringt der Installationsassistent den Benutzer durch die Ersteinrichtung des Plugins. Diese Ersteinrichtung  ist sehr minimalistisch. Die Konfiguration der Sende-Technik (SMTP) oder Empfänger-Listen können später vorgenommen werden.

Schritt 1: Absender konfigurieren

In diesem Schritt legt man die Absender Adresse fest und den Namen, den der Empfänger sieht.

Schritt 2: Anmeldeformular

Hier können Sie ein "Minimal-Formular" konfigurieren, das als Widget in die Website platziert werden kann.

Zwischen-Info

Dieser Screen informiert lediglich über den Status der Installation. Vermutlich gehört diese Seite zu denen die bald aus dem Wizard verschwinden 😉

Schritt 3: Versand testen

Einfach eine Mailadresse eingeben - am Besten eine, zu der Sie Zugang haben.

Schritt 4: Widget mit Anmeldeformular platzieren

In Schritt 2 wurde das Formular erstellt, nun können Sie das Widget über den Menüpunkt "Design > Widgets" platzieren. Sie können diesen Schritt auch überspringen, wenn Sie die Einbindung später durchführen möchten oder das Formular auf andere Weise einbauen.

Erstinstallation: Ende

So, das war's. Am Besten nun auf Dashboard klicken und die Funktionen und Optionen des Plugins durchgehen.

Das Dashboard

Das Dashboard ist die zentrale Informationsstelle des Plugins. Hier können Sie auf einen Blick alle laufenden und vergangene Aktivitäten und Statistiken über die Klicks sehen.

Die Grundkonfiguration

Absender, Antwort- und Bounce-Adresse

Im Wizard haben wir die Absender-Adresse angegeben. Diese Mailadresse ist die, die der Empfänger in seinem Mailprogramm sieht. Darüber hinaus lassen sich 2 weitere Adressen einstellen:

  1. Der Return Path: das ist die Bounce Adresse. Wenn das Mailsystem des vermeintlichen Empfängers nichts mit der Adresse anfangen kann, schickt das Mailsystem eine entsprechende Benachrichtigung an die hier angegebene Adresse
  2. Die Reply-To Adresse: hier handelt es sich einfach um die Mailadresse, die automatisch eingesetzt wird, wenn ein Empfänger auf Antworten klickt.

Auf das Thema Lizenzschlüssel gehen wir später ein.

Wichtig: wenn Sie ein Mail Gateway Dienst nutzen, werden diese beiden Adressen (Return Path und Reply To) wohl möglich überschrieben. Die Adressen können Sie entweder direkt in dem Integrations-Plugin oder in dem Kunden-Interface des Mail Gateway Anbieters angeben. Mehr zu dem Thema gibt es in dem Abschnitt Spezialeinstellungen.

Auslieferungsgeschwindigkeit

Auch wenn es nervig ist für 1.000 Empfänger mal 3 oder 4 Stunden zu benötigen: ohne deutlich größeren Aufwand (bzw. Budget) ist es gar nicht möglich bzw. sinnvoll mehr als 300-400 Mails pro Stunde auszuliefern. Die empfangenden Systeme sind meist so eingestellt, dass sie ab einer bestimmten Anzahl E-Mails pro Stunde alle weiteren eintreffenden E-Mails des ausliefernden Mailsystems automatisch als Spam flaggen und ggf. sogar bouncen (zurück schicken - an die Bounce-Adresse).

Spezialeinstellungen

Hier lassen sich verschiedene Einstellungen einrichten, z. B. Zugangsberechtigung zum Plugin für Editoren, Log Level (Sammeln von technischen Informationen), Debug Mode (wenn das Plugin nicht korrekt funktionieren sollte). Interessanter ist der Punkt Send email directly. Diese Option ist wichtig und der Zustand An/Aus hängt davon ab, wie die E-Mails tatsächlich verschickt werden sollen. Es gibt mehrere Möglichkeiten:

  1. Direkter Versand über WordPress: WordPress generiert nicht nur die E-Mails sondern verschickt sie selbst. Diese Option wird bei vielen Hostern problematisch sein, da oftmals WordPress so eingestellt wird, dass nur wenige E-Mails verschickt werden können. Die Gefahr des Missbrauchs durch eine gehackten WordPress Installation ist einfach zu groß.
  2. Versand über Mail-Dienstleister und Plugin-Integration: anstatt direkt SMTP Zugangsdaten einzutragen wird die Mail Gateway Integration über ein eigenes Plugin erstellt.
  3. SMTP Versand über ein Mail Gateway: hier kann über den Bereich SMTP ein Mail Gateway eingetragen werden, der den Versand übernimmt.Das heißt, dass die E-Mails vom Plugin generiert und an den angegebenen Server vermittelt werden.

Für die erste und zweite Option muss auf Send email directly auf On eingestellt werden, ansonsten auf No.

Analog zum Mail-Versand ist das Encoding nur von Bedeutung wenn WordPress selbst die Mails ausliefert. Wenn die Mails über einen anderen Dienstleister verschickt werden, kann über diesen das Encoding bestimmt werden. Die deutsche Übersetzung an der Stelle ist übrigens falsch (es steht Email Verschlüsselung anstatt Codierung).

SMTP Einstellungen

Die Parameter, die einzustellen sind, sind im Prinzip die gleichen wie die zur Konfiguration einer normalen Mailbox. Die erforderlichen Daten bekommen Sie von Ihrem Anbieter.

An der Stelle sei erwähnt, dass SaaS Web auch einen Mail Gateway Dienst anbietet:

https://www.saasweb.net/de/managed-hosting/saas-web-mail-gateway

Ein Newsletter erstellen

Die Erstellung eines Newsletters ist recht einfach. Es gibt einige Templates zur Auswahl. In vielen Fällen dürfte der Responsive Drag & Drop Composer die erste Wahl sein. Diese Option schauen wir uns auch gleich mal Schritt für Schritt an.

Der Drag & Drop Editor

Hier lassen sich Content-Elemente per Drag & Drop in das Template platzieren und anschließend mit Inhalt befüllen.

Neues Mailing: Titel eingeben

In diesem Schritt wird lediglich ein Titel festgelegt. Das ist der Betreff des Newsletters, das was der Empfänger zunächst sieht. Hier sollte man vorsichtig sein. Titel wie "Super Sale! Alles kostenlos" etc. werden häufig als Spam wahrgenommen.

Neues Mailing: Empfänger einstellen

Standardmäßig sind alle Empfänger ausgewählt. Sie können aber eine oder mehrere Listen (oder andere Kriterien) auswählen, um den Empfängerkreis genauer zu definieren. 

 

Neues Mailing: Versand einstellen

Hier geht es hauptsächlich darum das Tracking zu aktivieren - die Statistiken kann man anschließend in Echtzeit verfolgen - und um die Festlegung des Versandstarts (Datum und Uhrzeit).

Die Option Keep Private bzw. Privat halten bezieht sich auf die Nutzung der Erweiterung Newsletter Archive Extension mit der ein Newsletter Archiv auf der Website angelegt werden kann. Die Newsletter, die privat sein sollen, werden dort nicht aufgeführt.

Newsletter testen

Newsletter Plugin - Action

Nachdem alles eingestellt ist, das Newsletter Versandfertig ist, speichert man sicherheitshalber den Stand (das kann und sollte man zwischendurch auch machen). Als nächstes empfiehlt sich ein Testversand, um zu prüfen ob das Newsletter auch so ist, wie es soll. Der Test funktioniert aber so: in der Empfänger-Liste muss mindestens ein Empfänger die Eigenschaft Test Abonnent haben.

Newsletter Plugin - Subscriber details

Newsletter mit Mail Tester testen

Dieser Dienst hat zunächst nichts mit dem Plugin zu tun. Es ist jedoch immer ganz gut zu prüfen wie die Chancen sind beim Empfänger in die Mailbox zu landen anstatt in den Spam-Ordner. Dafür gibt es Dienste wie Mail Tester. Mail Tester ist  kostenlos und wirklich einfach zu nutzen - und ohne Registrierung und sonstige werbliche Nervigkeiten.

Einfach einen Fake-Empfänger in die Liste der Empfänger eintragen und die vorgegebene Adresse verknüpfen. Anschließend das Ergebnis auswerten lassen. Einfach https://www.mail-tester.com/[mailbox-name] aufrufen.

Newsletter abschicken

Wenn man wirklich fertig ist - Newsletter wurde inhaltlich und technisch geprüft -  kann es losgehen. Einfach auf Senden klicken. Dann wird an der eingestellten Uhrzeit mit dem Versand begonnen.

Achtung: das WP Cron Problem! Beinahe hätten wir das Thema vergessen 😉 Siehe den Abschnitt WP Cron.

Das WP Cron Problem

Wie funktionieren normalerweise zeitgesteuerte Aktionen bei WordPress?

WordPress, wie die meisten Webanwendungen, läuft nicht permanent im Speicher des Servers. Erst wenn eine Seite aufgerufen wird, passiert etwas und eine oder mehrere Skriptdateien werden ausgeführt.

Das bedeutet:  wenn keiner die Website besucht, wird kein Skript ausgeführt und es wird auch kein Newsletter am Donnerstag um 15h30 verschickt.

wp-cron ausschalten bzw. cronjobs anders einrichten

Die Lösung des Problems ist ganz einfach:

  • wp-cron.php deaktivieren: dazu muss in der zentralen Konfigurationsdatei von WordPress eine Zeile hinzugefügt werden.
    define('DISABLE_WP_CRON', true);
  • System-Cronjob einrichten, der regelmäßig, z. B. alle 5 Minuten, die URL aufruft:
    https://blog.saasweb.net/wp-cron.php

Wie und wo man Cronjobs einrichtet ist für Anfänger nicht zwingend einfach. Am Besten einen Profi fragen. Hier ein Screenshot aus ISPconfig für die Website www.vinsdumonde.blog.

ISPconfig cronjob

Newsletter Premium

Gegen eine Jahresgebühr ab 49 € (Blogger - 3 Websites) kann das Plugin auf Premium geupgradet werden.

Die Premium Version beinhaltet einige interessante Zusatz-Plugins:

  • WooCommerce Integration: eingeschaltet klinkt sich das Plugin in den Bestellprozess von WooCommerce ein und bietet Käufern die Möglichkeit an, sich gleich auch für ein Newsletter anzumelden.
  • Erweiterte Statistiken: gewinnen Sie mehr Einblick über Ihre Kunden/Leser.
  • Mail Gateway Integrationen: die bekannten Anbieter sind verfügbar wie zum Beispiel Sengrid, MailJet oder MandrillApp.

Die komplette Liste der Zusatzfunktionen bzw. der Erweiterungen finden Sie hier:
https://www.thenewsletterplugin.com/premium

Keine WPML Unterstützung

Perfekt kann keiner sein: leider unterstützt das Newsletter Plugin kein WPML. Damit ist es etwas mühsam, z. B. mit der Premium Extension, die Newsletter Anmeldung im Checkout zu integrieren und mit entsprechenden Sprach-Listen zu verbinden. Es ist mühsam aber es geht.. dazu muss man allerdings den Umweg über Anpassungen in der functions.php  gehen und action "deregistrieren" und angepasste Versionen wieder registrieren.

Fazit

Newsletter verschicken ist etwas aufwändiger als man zunächst vielleicht denkt. Vor allem, wenn man es richtig machen möchte.

Obwohl viele Punkte angesprochen wurden, wurden einige ausgelassen oder nur oberflächlich behandelt.

Jedenfalls ist das Plugin Newsletter eine interessante Erweiterung von WordPress, auch in der kostenfreien Variante. Für eine Integration mit WooCommerce empfiehlt sich die Premium Version.

Ladegeschwindigkeit der Website mit webpagetest.org testen

Immer mehr Speed

Das Thema Ladegeschwindigkeit ist kein Neues: schon zu Beginn des Webs war die Ladezeit ein wichtiger Faktor für den Erfolg einer Website - die Bandbreite der Internetanschlüsse war so gering - erinnern wir uns: 57k Modems waren vor 20 Jahren oftmals das Höchste der Gefühle; heute sind 50 MBit Anschlüsse keine Seltenheit mehr -, dass bereits ein paar hundert Kilobyte die Obergrenze für eine Seite war, bei der eine anständige Ladezeit möglich war.

Mit steigender Bandbreite hat sich die Lage im Bereich Desktop Computer zumindest theoretisch einigermaßen entspannt. Die immer größere Nutzung von mobilen Endgeräten und immer größerer Bildschirme mit hoher Auflösung (damals, vor 20 Jahren, z. B. 19" mit 1.200 x 800 Pixel, heute, z. B. 27" mit 2.560 x 1.440 Pixel) versetzt die Website Betreiber in eine ähnliche Lage wie vor zwanzig Jahren - es ist ein bisschen dasselbe Problem wie das Smartphone-Akku Problem: Akkus werden immer leistungsfähiger, aber die Geräte verbrauchen immer mehr Strom.

Ladegeschwindigkeit als Ranking-Faktor

Heute bekommt die Ladezeit eine neue Dimension: Suchmaschinen, allen voran Google, integrieren die Ladezeit in die Berechnung des Indexes. Vereinfacht gesagt: Je langsamer eine Website lädt, umso weiter hinten wird sie in Suchergebnissen angezeigt. Spätestens seit diesem Zeitpunkt ist das Thema bei professionellen Website Betreibern angekommen und ein regelrechtes Wettrennen hat begonnen.

Faktoren, die die Ladezeit beeinflussen

Es gibt mehrere Ebenen auf denen sich Optimierungen bemerkbar machen können. Einerseits die mit der Verbindung an sich zu tun haben, bzw. mit der "Power" - im Autovergleich: die Anzahl PS, ob das Auto aerodynamisch ist, wie viel es wiegt... Andererseits ob eine Website gut gebaut ist, unnötige Ladevorgänge von Elementen verhindert - im Autovergleich: der Fahrer; fährt er denn optimal, kennt er die Strecke oder muss er an allen Ampeln stehen bleiben? Es gibt sicher bessere Vergleiche als die mit dem Auto 😉 Jedenfalls werden die 2 Ebenen in den folgenden Absätzen genauer erklärt.

Hosting-Ebene: Infrastruktur, Webserver, Caching

  • Infrastruktur: generell spielt es eine Rolle ob die Website auf einem Shared Hosting Server oder einem dedicated Server betrieben wird. Die Geschwindigkeit beginnt bereits bei der Internet-Anbindung des Rechenzentrums und wie die Router des Anbieters die verschiedenen Server verbindet. Daraus resultiert nicht nur die Geschwindigkeit sondern auch der sogenannte Time to first Byte, eine Messgröße für die Zeit, die benötigt wird bis der erste Byte vom Server beim Client ankommt.
  • Web Server: der Webserver spielt ebenfalls eine Rolle in der Optimierung. Ganz allgemein sind Webserver mit Nginx schneller als Apache - das muss nicht unbedingt so sein, mit etwas Konfigurationsarbeit kann auch Apache fliegen. Aber nicht nur der Wechsel der Software bringt Geschwindigkeit. Auch Einstellungen wie Keep-Alive führen dazu, dass die Verbindung zum Webserver nicht nach jedem Request neu verhandelt werden muss.
  • Caching ist ein komplexes Thema, da es auf vielen Ebenen Caching gibt (CDN, HTTP Reverse Proxy wie Varnish Cache, local Cache, Datenbank Cache wie memcached oder Redis, ...). Caching gehört zu den effektivsten Optionen, um die Ladezeit zu verkürzen, je nach dem wie es eingesetzt wird. Es sei angemerkt, dass nicht immer alles gecacht werden kann - Seiten mit hoher Änderungsfrequenz wie z. B. Nachrichtenportale möchten, dass Besucher immer die neuesten Artikel zu sehen bekommen.

Website-Ebene: HTML/JS/CSS, Media-Elemente

  • Eine korrekte Seitenstruktur spielt eine große Rolle - wir reden gar nicht von kaputtem HTML. Die HTML-Struktur eines Dokuments sollte immer nur so schlank sein wie nötig und bizarre Verschachtelungen sollten möglichst vermieden werden. Entsprechend, wenn nicht zwingend notwendig, sollten Elemente nicht erst per Javascript eingefügt werden.
  • Media-Elemente, sprich Bilder sollten stets für das Endgerät optimiert sein - ein großes Bild für Desktop sollte in einer entsprechend kleineren Version auf einem Smartphone geladen werden.

Online Geschwindigkeitscheck mit www.webpagetest.org

Das kostenlose Projekt webpagetest.org ermöglicht für jeden die Ladezeit seiner (öffentlich zugänglichen) Website zu messen und zu analysieren.

So einfach geht's

Um eine Analyse der Website zu starten braucht man nur:

  • URL: Die Website URL eingeben, am Besten inklusive https und www, sonst wird die ggf. vorhandene Umleitung mit in die Ladezeit aufgenommen
  • Location: von wo soll denn gemessen werden? Tatsächlich spielt die geografische Lage auch eine Rolle - wobei webpagetest.org auch diesen Faktor in den Ergebnissen berücksichtigt und einen Korrekturfaktor implementiert.
  • Browser: es kann durchaus eine Rolle spielen welcher Browser getestet wird. Es lassen sich übrigens je nach Anbieter und Location auch mobile Browser auswählen
  • Anzahl Tests: es wird empfohlen mehrere Tests auszuführen um einen aussagekräftigeren Mittelwert zu erhalten
  • Repeat View: hier handelt es sich um die Ladezeit, wenn ein Client (Browser) wiederholt eine Seite lädt und ggf. Caching Effekte besser bemerkbar sein sollten - es wird empfohlen first view and repeat view auszuwählen

Übersicht des Ergebnisses

Für die schnelle Beurteilung des Ergebnisses dienen die 6 Indikatoren (A bis F - A ist die Bestnote).

Hier in kürze die Bedeutung der 6 Punkte:

  1. First Byte Time: Dauer für den Empfang des ersten Bytes des Webservers. Dieser Wert lässt sich nicht wirklich verändern. Der Wert ist abhängig von der physikalischen Hosting-Umgebung (Rechenzentrum, Server) und der momentanen Auslastung der Systeme.
  2. Keep-alive enabled: Option des Webservers, die bewirkt, dass die Verbindung zwischen Server und Browser offen bleibt und somit vermieden wird, dass jedes Mal der TCP-Handshake neu ausgehandelt werden soll. Eine Webseite hat oftmals 100 oder mehr Elemente, die geladen werden sollen - da kann eine vermeintlich kleine Optimierung schon mal was bewirken.
  3. Compress transfer: ebenfalls eine Webserver-Einstellung. Der Webserver kann die Daten komprimiert übertragen, sodass weniger Daten übertragen werden brauchen. Moderne Browser können inzwischen alle mit komprimierten Datenübertragung umgehen.
  4. Compress images: hier sind die Website-Betreiber gefragt. Der Indikator zeigt wie gut die Bilder, die geladen werden, komprimiert sind. Lässt sich die Größe (ohne Qualitätsverlust) verringern?
  5. Cache static content: kommen die angezeigten Elemente vom Cache oder wurden diese frisch vom Webserver ausgegeben?
  6. Effective use of CDN: werden die Inhalte von einem CDN (Content Delivery Network) ausgegeben?

Performance Results

In der oberen Tabelle sind weitere Werte abzulesen, die als Ergebnis des Geschwindigkeitstests zu verstehen sind. Hier wird die Geschwindigkeit der Anzeige der Website in einzelne Stufen unterteilt, um besser nachzuvollziehen, wo die Ladezeiten entstehen.

  • Load Time: die Zeit entspricht der Ladezeit der Website. Die Fully Loaded Zeit hingegen misst noch alle Aktivitäten bis zu 2 Sekunden nach der Load Time, also Elemente, die beispielsweise per Javascript nachgeladen werden.
  • First Byte (TTFB): die Zeit, die für den ersten Byte vom Server zum Browser benötigt, wenn die Website erstmals aufgerufen wird.
  • Start Render: Zeit, die der Browser benötigt, um mit der Anzeige der Website zu beginnen.
  • Speed Index: der Speed-Index ist ein Wert, um die gemessene Geschwindigkeit zu bewerten. Je kleiner dieser Wert ist, umso besser. Hier gibt es ausführliche Informationen wie dieser Index errechnet wird: https://sites.google.com/a/webpagetest.org/docs/using-webpagetest/metrics/speed-index

Details - Wasserfall Diagramm

Im Wasserfall-Diagramm lässt sich sehr schnell erkennen wie viele Requests das Laden der Seite erzeugt und wie schnell die einzelnen Requests beantwortet werden. Anhand der Farbcodes lassen sich die Requests auch einstufen, ob DNS Anfrage, HTML/Text, Javascript/Text, Bilddaten oder andere Inhaltstypen geladen werden.

Content Breakdown

Der Bereich "Content Breakdown" ist besonders interessant um die Verhältnisse von Text, CSS, Javascript und Bilder zu sehen. So lässt sich auch besser entscheiden wo der größere Hebel ist, wenn es darum geht Prioritäten für die Optimierung festzulegen.

Bildanalyse

Der relativ neue Punkt "Image Analysis" bietet die Analyse der Bilddateien. Der Dienst prüft jedes einzelne Bild, bewertet die Kompression und benotet diese auch (A-F). Es ist dort auch möglich, den Cloud-Dienst kostenpflichtig in Anspruch zu nehmen, jedoch keine Pflicht. Die Optimierungen, falls welche sinnvoll möglich sind, können Sie selbst durchführen - es gibt dafür zahlreiche Bildbearbeitungsprogramme, die dafür genutzt werden können. Es gibt auch ein Artikel in diesem Blog zum Thema Bildoptimierung.

Ein professionelles Tool für null Euro

Webpagetest.org ist ein ausgereiftes Projekt mit dem die Optimierung von Websites wirklich gut vorangetrieben werden kann. Besonders nett ist, dass das Projekt völlig kostenfrei nutzbar ist und auch keine Registrierung erfordert. Hin und wieder müssen Sie etwas warten bis die Analyse-Anfrage durchgeführt wird - schließlich sind Sie nicht die einzige Person, die diesen Dienst in Anspruch nehmen.