DSGVO und Wordpress

DSGVO für WordPress Praktiker 2023

Inhaltsverzeichnis

Mein Anliegen als Coach ist es, Orientierung in der digitalen Welt zu geben. Aktuell wird dies in technischen Fragen insbesondere für die Optimierung einer WordPress-Installation im Sinne der EU-DSGVO (engl. GDPR) gebraucht. Es besteht in diesem Thema erhebliche Rechtsunsicherheit (Beste Zusammenfassung dazu auf heise.de) und es wird viel Geld mit dieser Unsicherheit verdient. Der Artikel dient der Orientierung zum Thema DSGVO und WordPress. Meine subjektiven Empfehlungen und Erfahrungen sind hier gesammelt und werden regelmäßig aktualisiert. Ziel des Artikels sind pragmatische Lösungen und nicht die Liste aller Möglichkeiten. Wer Diskussionen und Details sucht, schaut bitte in die Facebook-Foren, schreibt mir eine E-Mail an mk@storemotion.de oder kommentiert am Artikel.

Nicht alle hier genannten Themen sind zwingend nötig, um ein Blog DSGVO-Konform zu gestalten. Der Artikel hat sich jedoch zu einem Best-Practice Artikel entwickelt, der viele wertvolle Hinweise enthält, die oft schwierig vom DSGVO-Thema zu trennen sind.

Disclaimer: Die Informationen in diesem Artikel wurden nach dem besten Wissen und Gewissen unabhängig recherchiert und mit meinen persönlichen Erfahrungen ergänzt. Wir haben weder Testprodukte, noch Unterstützung der Hersteller erhalten (Ausnahmen sind markiert). Der Artikel stellt keinesfalls eine Rechtsbelehrung dar. Jede Empfehlung ist von Dir selbst zu überprüfen, insbesondere auf rechtliche Gültigkeit.

Zur Einstimmung empfehle ich: Keine Panik. Die EU-DSGVO/GDPR bringt uns dazu mit Daten sparsam und transparent umzugehen. Wer das immer im Blick hat, bleibt entspannt und findet – nicht zuletzt mit diesem Artikel – passende Lösungen. Solange ein berechtigtes Interesse (DSGVO §6 (1) f) (oder einer der weiteren Erlaubnisgründe dieses Paragrafen) besteht, dürfen wir weiterhin Daten erheben und verarbeiten. Ein berechtigtes Interesse kann im Grundsatz „jedes von der Rechtsordnung gebilligte Interesse“ sein, das über reine Neugierde hinausgeht. Berechtigte Interessen können rechtlich, wirtschaftlich oder ideell begründet werden. Damit ist (weiterhin) fast alles möglich, was mit einwandfreien Argumenten und einer Interessenabwägung unterlegt ist.

Und nochmal: Artikel in der ZEIT: Keine Website ist auch keine Lösung. Und wer wissen will, was wirklich passiert, liest den Postillon.

Zum Thema Opt-Out, Opt-In und der Risikoabwägung empfehle ich den Artikel von RA Schwenke: „Wenn Onlinemarketing zum Glücksspiel wird – EU-DSGVO, Tracking und Opt-In-Pflicht für Cookies“ und das Update dazu „Neues EuGH-Urteil: Cookie-Einwilligung-Banner und Detailinformationen sind im Onlinemarketing Pflicht“

Weiterhin: Es gibt deutliche Hinweise darauf gibt, das Verstöße gegen das DSGVO nicht automatisch als unlauteren Wettbewerb (UWG) gewesen werden und damit nicht abgemahnt werden können (Quelle, Quelle).

Nachtrag November 2018: Es ist alles nicht so schlimm gekommen, wie viele vermutet hatten. Die Abmahnungen gibt es meist nur bei wirklich groben Verletzungen, was unter anderem liegen mag, das in den Details das Risiko für den Abmahnenden vor Gericht zu verlieren aufgrund der weiterhin unklaren Lage sehr hoch ist. Lesetipp: Update zum Onlinemarketing, Cookies, Opt-Ins, Facebook-Pixel und Stand der ePrivacy-Verordnung

Nachtrag Februar 2020: Auch heute gilt: Wer die Grundregeln sauber beachtet, hat aktuell nicht zu befürchten von Klagen überzogen zu werden oder hohe Bußgelder zahlen zu müssen. Die Datenschutzbehörden haben jedoch angekündigt, ab jetzt strenger zu werden und genauer hinzuschauen. Doch auch heute gibt es noch zu vielen Themen keinerlei eindeutige Rechtslage, so das es in der Praxis schwierig bis unmöglich ist, alles richtigzumachen. Nichtstun im Bereich Datenschutz ist jedoch unverzeihlich und wird teuer werden. Zu Recht, wie ich denke.

Nachtrag Juli 2021: Mittlerweile gibt es eine relative Klarheit über das, was man tun und lassen sollte. Der Fokus schiebt sich mehr auf die korrekten Einwilligungen als auf das grundsätzliche tun oder lassen. Deshalb gewinnen die sauberen Cookie-Banner eine größere Bedeutung. Ich habe den Artikel erneut mit vielen neuen Informationen überarbeitet.

Affiliatelinks/Werbelinks: In diesem Artikel verwende ich z.T. sogenannte Affiliate-Links. Wenn du auf so einen Affiliate-Link klickst und über diesen Link einkaufst, bekomme ich von dem betreffenden Online-Shop oder Anbieter eine Provision. Für dich verändert sich der Preis nicht.

Artikel-Version 68 vom 12. Januar 2023

WordPress und die DSGVO

Das Core-Team von WordPress.org hat mit der Version 4.9.6 am 17. Mai 2018 ein Update veröffentlicht, welches den Umgang mit den DSGVO/GDPR-Richtlinien vereinfacht (Schau, was in Planung ist). Die Hauptfunktionen sind die Möglichkeit Personenbezogene Daten zu exportieren und zu löschen (beides unter Werkzeuge). Beim Kommentieren erscheint jetzt eine Checkbox „Meinen Namen, E-Mail und Website in diesem Browser speichern, bis ich wieder kommentiere.“, welche aktuell nicht im Backend abschaltbar oder konfigurierbar ist.

Weiterhin wird unter Einstellungen/Datenschutz ab jetzt die eigene Datenschutz-Seite ausgewählt und Vorschläge gemacht, welche Textbausteine eingefügt werden sollten. Auf der Login-Seite erscheint jetzt der Hinweis auf die Datenschutzerklärung.

WordPress.com-Nutzer: Der Artikel bezieht sich auf die selbst installierbare Version von WordPress.org – für WP.COM-Nutzer sind nicht alle Einstellungen 1:1 umsetzbar.

Einstellungen in WordPress für die DSGVO

Unter Einstellungen/Schreiben/ Emoticons wie :-) und :-P in Grafiken umwandeln abschalten, denn hier wird die IP-Adresse übertragen. Der Punkt ist nicht in jeder WordPress-Installation sichtbar – wir suchen noch den Grund dafür (UTF-8 in der MySQL Datenbank?). Das Plugin Autoptimize bietet unter Einstellungen/Autoptimize/Extras/Entfernt WordPress' internes Emoji-Inline-CSS, Inline JavaScript und eine weitere nicht optimierte JavaScript-Datei eine passende Option. Bei Fast Velocity Minify ist es die Option Settings/HTML Options/Remove Emoji.

Hardcore-Lösung: In der Datenbank-Tabelle ‚wpoptions‘ den Eintrag für ‚usesmilies‘ auf 0 setzen.
Alternative: Hinweis in die Datenschutzerklärung (DSE). Und hier nicht austricksen lassen: Browser stellen diese Zeichen manchmal automatisch als Emojis dar, ohne das WordPress daran einen Anteil hätte.

Unter Einstellungen/Diskussionen/Avatare anzeigen abschalten, denn auch hier wird die IP und eMail-Adresse übertragen. Alternative: Hinweis in den Datenschutzerklärungen und diesen Hinweis beim Abgeben von Kommentaren ergänzen. Weitere Alternative: das Plugin Avatar Privacy verwenden.

Unter Einstellungen/Datenschutz die aktuelle Datenschutz-Seite auswählen und Diese Seite benutzen klicken.

Kommentare: Das einfachste ist, Kommentare komplett abzuschalten. (Einstellungen/Diskussionen/ Besuchern erlauben, neue Beiträge zu kommentieren  – Achtung: Kann an jedem Beitrag/Seite überschrieben werden).

Wer Kommentare weiterhin erlauben möchte, sollte Einstellungen/Diskussionen/Benutzer müssen zum Kommentieren Name und E-Mail-Adresse angeben abschalten – Datensparsamkeit ist eine Anforderung der DSGVO. Entsprechende Infos in der Datenschutzerklärung sind Pflicht (u.a. Speicherung der IP-Adresse). Außerdem brauchst du ein Opt-In. Im Real Cookie Banner gibt es eine Vorlage dafür.

Es ist wahrscheinlich, für Speichern der Kommentare das berechtigte Interesse (Art 6 Abs. 1 lit. f DSGVO) nicht ausreichend ist, sondern es eine weitere Einwilligung des Nutzers (Art 6 Abs. 1 lit. a, 7 DSGVO) benötigt. Ich persönlich glaube, das der Hinweis in der Datenschutzerklärung und ein Opt-In im Cookie Banner und die von WordPress angebotene Checkbox ausreichend sind, den Nutzer transparent über die Verwertung seiner Daten zu informieren um vor allen Problematik des Kopplungs-Verbotes aus dem Weg zu gehen (Quelle).

WordPress Plugins und die DSGVO

Eine Liste von Plugins mit DSGO-Hinweisen gibt es hier. Deshalb nur einzelne Hinweise:

Akismet Anti-Spam Plugin. Am besten abschalten der mindestens mit Automatticc einen Auftragsverarbeitungsvertrag (AVV) schließen hier.

Jetpack Plugin Das Jetpack Plugin ist ebenfalls von Automattic und sammelt mehr oder weniger in allen Einstellungen Daten oder transferiert sie. Der aktuelle Rat heißt: abschalten und durch leichtgewichtigere und transparentere Alternativen ersetzen. Es wurden Anpassungen gemacht, die aber aus meiner Sicht nicht weitreichend genug sind. Den nötigen AVV bekommt man nur als zahlender Nutzer (Quelle).

Antispam Bee nutzen, wenn Kommentare erlaubt sind. Das Plugin überträgt in der Standard-Konfiguration keine persönlichen Daten (Quelle). In einer Standard-Installation sind unter Einstellungen/Antispam Bee alle Optionen überprüfen, wo ein „Datenschutzhinweis“ steht. Diese ausgeschaltet lassen oder wegen berechtigtem Interesse in der Datenschutzerklärung erwähnen.

Wer als Journalist oder Autor die Zählpixel der VG Wort nutzt, sollte das Plugin Prosodia VGW OS für Zählmarken (VG WORT) installieren und die DSE entsprechend ergänzen. Die generierten Zählpixel können komfortabel importiert werden. Über die Einordnung dieses Pixel im Sinne der DSGVO besteht keine Einigung (Quelle). Wenn dir die Einnahmen wichtig sind, empfehle ich, das Tracking Pixel als essentiell für den Webseitenbetrieb zu erachten, aber im Cookie Banner explizit darauf hinzuweisen (geht mit dem Real Cookie Banner) und in der Datenschutzerklärung aufzuklären.

YouTube Videos

Normal eingebettet YouTube-Videos setzten sofort beim Laden der Seite eine größere Menge Tracking-Cookies. Ohne explizites Opt-Ini ist das keinesfalls mehr zulässig. Man kann beim Erstellen des Links in YouTube bei Teilen/Einbetten den „Erweiterten Datenschutzmodus aktivieren.“ Wählen und erhält eine URL die aus https://www.youtube.com/embed/… ein https://www.youtube-nocookie.com/… macht. Es werden allerdings weiterhin Cookies gesetzt (Hintergrundinfos im Artikel der c’t). Das lässt sich mit dem Plugin WP YouTube Lyte umgehen, welches ein Vorschaubild lokal speichert und YouTube erst aufruft, wenn der Nutzer das Video klickt. Hierzu den Text unter Einstellungen/WP YouTube Lyte den Punkt Cache thumbnails locally? Auswählen und unter Text to be added under every LYTE video zum Beispiel folgenden Text eintragen: „Mit dem Klick auf das Video verbinden Sie sich mit YouTube“ (Update 2021: Vermutlich reicht diese Aussage nicht mehr, sondern muss rechtlich sauberer formuliert werden). Ein Eintrag für YouTube in die DSE ist deshalb trotzdem nötig. Bei meinen Tests wurden die von WordPress eingebetteten Videos nicht konvertiert, wohl aber wenn die URL direkt eingegeben wurde.

Wer ein Theme mit einer Content Box für YouTube-Videos verwendet hat aktuell ein Problem – das funktioniert meist nicht mit den Plugins.

Wer das Borlabs Cookie oder den Real Cookie Banner verwendet, kann die dort integrierte Funktion nutzen.

Wer Elementor als Pagebuilder nutzt, installiert sich das Ultimate Addons for Elementor Plugin Ultimate Addons for Elementor und dort das Video-Widget. Hier kannst Du einen Startbildschirm vorschalten, so das erst nach dem Klick Daten an YouTube übergeben werden. Seit Version 2.40 kann auch der Real Cookie Banner mit dieser Konstellation umgehen und du kannst den integrierten Content Blocker nutzen, so dass das Video nur bei expliziter Einwilligung (Opt-In kann auch auf dem Video selbst noch geholt werden, das geht bei den anderen Plugins nicht) abgespielt wird.

Google Fonts & Adobe Typekit

Im Netz läuft eine hitzige Diskussion über die Einbindung der Google Fonts. Bei dem Abruf der eigenen Website wird zumindest die IP-Adresse des Kunden an Google übertragen. Google versichert jedoch, das hier keine Speicherung oder Verknüpfung der Daten erfolgt. Die Möglichkeit, die Fonts auf den eigenen Server zu installieren gibt es, man muss aber auf die korrekte Deklaration der Apache-, UFL oder OFL-Lizenz achten. Normalerweise liefert der Google-Server immer die aktuelle Version des Fonts und ist meist deutlich schneller als die eigene Seite. Der Google Font müsste zwar über mehrere Webseiten hinweg im Cache teilbar sein, aber aus Sicherheitsgründen nutzen die Browser gecachte Dateien über Domains hinweg nicht mehr. Ich halte es für berechtigtes Interesse (Art 6 Abs. 1 lit. f DSGVO), das die Fonts über Google Fonts eingebunden werden dürfen. Ein Eintrag in die DSE wie immer angebracht. Im Zweifel: einen Anwalt fragen oder auf Comic Sans umstellen. Weitere Quellen zu meiner Meinung hier und hier und gegenteiliger Meinung hier.

Erste Berichte über erfolgte Abmahnungen bestätigen sich nicht. Update Februar 2020: Mir ist nicht bekannt, das die Fonts-Thematik zu irgendeiner relevanten Strafe o.ä. geführt hätte. Es bleibt aber weiterhin ein Risiko.

Letztendlich gibt es aktuell nur folgende Lösungen:

  1. Keinen Font verwenden. Das ist ganz sicher rechtlich sauber. Nur das abschalten der ganzen Webseite macht sie noch sicherer.
  2. Font lokal vom eigenen Server laden. Wenn dieser HTTP/2 unterstützt, ist das ein rechtlich und technisch sauberes vorgehen, wenn die Font-Lizenzen beachtet werden. Wird der Font sauber geladen (preload), flickert nichts.
  3. Fonts von Google Fonts oder Adobe Typekit nachladen. Das geht mit einem sauberen Opt-In und einen Content-Blocker. Da aber zuerst die Einwilligung geprüft werden muss, bevor der Font dem Browser zur Verfügung gestellt wird, ist ein Flicken beim Laden der Seite nicht wirklich zu verhindern.


Wer doch das Problem umgehen möchte, sollte das Plugin Autoptimize nutzen. Bietet sowohl die Möglichkeit des Entfernen als auch Einbetten. Hierzu das passende unter Einstellungen/Autoptimize/Extras/Googe Fonts auswählen. Das funktioniert meistens, aber abhängig vom Theme nicht immer. Notlösung: Plugin Clearfy oder Disable Google Fonts – meist hilft hier nur ausprobieren.

Wer sein Google Font lokal einbindet, muss sich um die Lizenz des Fonts kümmern. Google stellt hier zu jedem Font die Lizenz dar. Meistens reicht ein Hinweis im Impressum auf den verwendeten Font + der passenden Lizenz. Seit Version Version 3.6 kann WP Astra alle gefundenen Google Fonts lokal automatisch einbetten und laden (Quelle).

In die gleiche Kategorie wie Google Fonts gehört Font Awesome, da es oft von einem externen CDN wie MaxCDN geholt wird. Diese erklären, DSGVO-Konform zu sein und bieten einen AVV an. Ein Hinweis in die DSE ist das Minimum, der Abschluss des AVV trotzdem nötig. Ein Opt-In sichert zusätzlich.

Gleiches gilt für Adobe Typekit. In der DSE sollte ein entsprechender Hinweis auf die Nutzung von Typekit stehen mit dem Link auf die Datenschutzhinweise – der Datenschutz-Generator hat einen passenden Passus. Bei Typekit ist das lokale Laden der Fonts nicht erlaubt, da im Gegensatz zu Google Fonts kommerzielle Fonts angeboten werden.

Google Maps

Google Maps lassen sich sehr komfortabel über das Plugin WP Google Maps einbinden. Ein Hinweis auf die Einbindung von Google Maps in der Datenschutzerklärung ist Pflicht. Ich würde einen Hinweis auf die DSE zusätzlich direkt an die Karte setzen. Da einige Daten übertragen und Cookies gesetzt werden ist aus Datenschutzgründen das Thema Google Maps zumindest kritischer zu sehen als Google Fonts und ein Opt-In nötig. Es wird ein gut formulierter Cookie-Hinweis beim Aufruf der Website mit Opt-In benötigt und ein Content Blocker benötigt (beides bietet der Real Cookie Banner). Ein Screenshot der Karte ist definitiv keine Lösung, da aus Urheber- und Lizenzgründen verboten. Das ziemlich frische Plugin Extra Privacy for Elementorimplementiert eine 2-Klick-Lösung, ist allerdings nicht annähernd so komfortabel wie WP Google Maps. Google Maps bindet übrigens die Google Fonts ein – wer sie also wie oben beschrieben losgeworden ist, bekommt sie hier durch die Hintertür wieder dazu.

Google Analytics

Manche empfehlen, Google Analytics durch ein selbst gehostetes Plugin zu ersetzen (z.B. Matomo, früher PIWIK, DSGVO Infos). Aus Datenschutzgründen hilft das nur bedingt, denn die Daten werden nur woanders erhoben. Für die Einbindung von Analytics ist zwingend der Abschluss des AVV mit Google nötig. Das geht durch einen Klick im Bereich Verwaltung/Kontoeinstellungen. Manche sagen, das der Vertragsschluss nur schriftlich rechtskräftig wäre und schicken Papier nach Irrland. Ich erkenne hier nicht, warum die erweiterte Schriftform zwingend nötig sein sollte, vor allem da das Datum der Zustimmung von Google angezeigt wird.

Leseempfehlung zum Thema: Google Analytics & DSGVO – Anleitung für möglichst rechtssichere Nutzung, Mustertext und FAQ. Wer auf alles keine Lust hat, kann mit dem Plugin WP Statistics arbeiten. Unbedingt unter Statistik/Einstellungen/Privacy/Hash IP Addresses einschalten.


Den Tracking Code kann man direkt in WordPress über die meisten Templates einfügen. Hier wird aber der Code sofort beim Laden der Seite eingebunden, was nicht rechtskonform ist. Der Code darf erst nach expliziter Zustimmung mittels eines Opt-In geladen werden. Das können die meisten Plugins, die ein Opt-In anbieten.

Es gibt außerdem das Plugin Google Analytics Dashboard for WP (GADWP), das dieses alle gängigen Ops-Out und Do-Not-Track Varianten beachtet.

Wichtigste Einstellung: Unter Google Analytics/Tracking-Code/Erweiterte Einstellungen folgende drei anschalten: IP-Adresse anonymisieren, enable support for user opt-out, exclude tracking for users sending Do Not Track header und unbedingt aktiviere Remarketing-, demografische und Interessen-Berichte ausschalten. Wer die Remarketing-Funktion oder die Funktion für Werbeberichte (siehe unter Google Analytics/Verwaltung//Tracking-Informationen/Datensammlung) anschaltet, muss sich möglicherweise eine explizite Einwilligung vom Kunden einholen (also ein Opt-In statt Opt-Out, Quelle). Wie genau das geht streiten sich aktuell die Anwälte und später die Gerichte (siehe Artikel zum Thema Glücksspiel oben im Text). Ein Opt-In ist ganz sicher zu empfehlen.

Wer den klassischen Google Universal Analytics Code von Hand eingefügt hat, sollte dringend das Anonymisieren der IP-Adressen einschalten ((Quelle) mit dem einfügen von

 ga('set', 'anonymizeIp', true);

im Script in der Zeile vor

 ga('send', 'pageview');

Wer den neuen Google Site Tag einsetzt, ändert die Zeile (Quelle) von

gtag('config', 'UA-XXXXX-X');

in diese neue Zeile (UA-Code bitte durch eigenen ersetzen):

gtag('config', 'UA -XXXXX-X', { 'anonymize_ip': true });

Man ist sich einig, das auch nach einer Zustimmung über den Cookie Consent eine Opt-Out-Möglichkeit bestehen muss. Die ist am besten an der passenden Stelle in der Datenschutzerklärung aufgehoben. Mit dem Real Cookie Plugin ist das für alle Opt-Ins möglich, hierzu gibt es Platzhalter, welche die verschiedenen Funktionen aufrufen:

Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: history,revoke,change!

Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: history,revoke,change!

Bitte gib in deinem Shortcode das Attribut `type` an. Erlaubt: history,revoke,change!

Wer es einzeln möchte, nutzt das Plugin Google Analytics Opt-Out (DSGVO / GDPR) und es fügt mit einem Shortcode in der DSE diese Funktionalität hinzu. Dieses Plugin prüft auch, ob die IP Anonymisierung aktiv ist und checkt wöchentlich, ob noch alles wie geplant funktioniert.

Wer den Cookie von DoubleClick auf seine Website findet, hat hier die Erklärung: Google liefert ihn für das Werbenetzwerk.

Facebook Pixel

Der Facebook-Pixel sorgt wohl für die meisten Diskussionen und es gibt zwar eine Tendenz in den Aussagen der Anwälte, aber auch deutliche Unsicherheiten. Wer den Facebook Pixel nicht aktiv für seine Werbekampagnen nutzt, sollte ihn rauswerfen – einfach wegen der Risikoabwägung.

Wer die Standard-Version des Pixels braucht ein explizites Opt-In. Es gilt letztendlich das gleiche, wie für Google Analytics. Für den erweiterten Abgleich (das wäre der Remarketing-Pixel mit Custom Audiences und Look-Alike-Audiences) ist ein Opt-In (Explizite Zustimmung!) ganz sicher nötig. Dazu eignen sich die folgenden Plugins:

Cookie Consent

Die Cookie-Meldung ist nicht neu und müsste daher schon auf jeder Seite laufen (gute Infos von Google auf [cookiechoices.org]). Spätesten 2021 ist deutlich, das wir für die von den Nutzung unserer Webseite immer ein oder mehrere Opt-In brauchen und wir im Detail über jedes gesetzten Cookie aufklären müssen. Während man früher oft eine Opt-Out-Möglichkeit (Do-not-track u.ä.) ausreichend befand, ist das heute nicht mehr der Fall. Ich würde für alles, was nicht für das funktionieren der Grundfunktionen der Seite überlebensnotwendig ist, ein begründetes Opt-In holen.

In Kürze werde ich einen eigenen Artikel zum Thema veröffentlichen, weil der Cookie-Banner nach wie vor einer der größten Herausforderungen bei einer sauberen WordPress-Installation darstellt.

Früher haben wir für einfachste Cookie das kostenfreie Plugin Cookie Notice von dFactory genutzt. Damit kommt man leider nicht mehr aus, wenn auch nur ein weiterer Cookie oder Pixel installiert wird.

Aktuell ist mir kein kostenfreies Plugin für das Thema DSGVO und Opt-In bekannt, das halbwegs rechtlich sauber arbeitet und empfehlenswert wäre. Da die Umsetzung z.T. technisch anspruchsvoll ist, macht es durchaus Sinn zu investieren. Vor allem ist es günstiger als jede Abmahnung. Hier eine kleine Übersicht.

  • Real Cookie Banner ist das neuste (Start November 2020) unter den Plugins hat die Entwickler haben sich offensichtlich zur Aufgabe gemacht, das Thema endlich gründlich anzugehen. Es ist meine absolute Empfehlung, schon in in der kostenfreien Variante. Preise pro Jahr: 49 € (eine Seite), 79 € (3 Seiten), 119 € (5 Seiten), 219 € (10 Seiten), 299 € (25 Seiten). Details siehe weiter unten.

    Ein Special für die Leser dieses Artikels: Mit dem Gutscheincode „STOREMOTION“ erhältst du 20% Rabatt auf den Kaufpreis im ersten Jahr.
  • Borlabs Cookie für 39 € (eine Seite), 59 € (zwei Seiten), 149 € (25 Seiten), 299 € (99 Seiten) das Plugin deckt auch die Thematik der YouTube/Vimeo-Videos ab. Der deutschsprachige Entwickler Benjamin Bornschein ist sehr aktiv und auf Facebook in verschiedenen Gruppen direkt ansprechbar. Das Plugin ist sehr umfangreich, kommt aber an die Eleganz von Real Cookie Banner nicht annähernd heran.
  • DSGVO Pixel Matefür 39 € für eine Seite, 89 € für drei Seiten.
  • Cookie Notice von dFactory ab Version 1.2.43,0 kostenfrei. Da die Funktionalität absolut nicht mehr ausreichte, wurde in Version 2 ein anderer kostenpflichtiger Dienst quasi Huckepack in das Plugin eingebaut.
  • Cookie Control v9 von kostenfrei bis £199 + VAT / Jahr. Kein WordPress-Plugin, lädt also von fremden Servern. Dahingehend Prinzip begingt nicht tauglich.
  • Cookiebot.com (und sein WordPress Plugin) für kleinste Seiten 9€/Monat, später gleich 21 €/Monat. Damit allein aus Kostengründen nicht interessant.
  • Complianz GDPR/CCPA Cookie-Einwilligung, sehr umfangreich, Zugriff auf Datenbank für die Services, hässlicher Dialog, nicht ausreichende Aufklärung im Detail, ab 39 € im Jahr
  • EU Cookie Law for GDPR/CCPA kein Modal-Opt-In möglich, sehr simpel, nicht gepflegt, keine rechtssichere Option (mehr)

Real Cookie Banner

Der Real Cookie Banner ist aus meiner Sicht aktuell die mit Abstand beste Möglichkeit, eine WordPress-Installation mit einem Cookie Banner rechtssicher zu betreiben (der Selbstvergleich „Real Cookie Banner vs. alternative WordPress Cookie Plugin“). Es ist mit Abstand das neuste (Start November 2020) unter den Cookie Plugins. Die Entwickler haben sich offensichtlich zur Aufgabe gemacht, das Thema endlich gründlich anzugehen. Die Komplexität des Plugins ist wirklich beeindruckend und erschreckend zugleich, was heutzutage nötig ist, um rechtskonform zu sein.

Das Plugin wird in sehr kurzen Zyklen weiterentwickelt. Ich hatte über mehrere Wochen intensiven Kontakt mit den Entwicklern, die immer wieder schnell und kompetent reagiert haben. Spezifische Probleme meines Setups (z.B. mit Elementor oder Rocket Cache 3.9.) wurden innerhalb eines Tages beseitigt. Durch die über 100 Templates für Services und passende Content Blocker ist die Aufklärung der Nutzer die mit Abstand informierteste. Das schafft kein anders WordPress-Plugin.

Borlabs Cookie

Den Borlabs Cookie stelle ich hier einzeln vor, weil er häufig genutzt wird, viele Funktionen hat und von einem deutschen Entwickler kommt. Die Konfiguration an sich ist selbsterklärend, vor allem wenn man ‚nur‘ die Google und Facebook-Pixel verwendet. In einem Test hat er die Sprache des Blogs nicht erkannt und alle Meldungen auf englisch angezeigt. Mit der Import/Export-Funktion aus einem anderen Blog waren die die deutschen Texte leicht übertragbar.

Wer das Borlabs Cookie mit Autoptimize verwendet wird merken, daß das Cookie Consent nicht angezeigt wird. Hier muss man unter Einstellungen/Autoptimize/Erweiterte Einstellungen einblenden wählen und dann in der Zeile Folgende Skripte von Autoptimize ausschließen das Borlabs Cookie ergänzen, in dem man , borlabs-cookie.min.js anhängt. Die Zeile sieht im Standard dann so aus:

seal.js, js/jquery/jquery.js,borlabs-cookie.min.js

Cookie Notice von dFactory

Für einfachste Cookie Meldungen hat sich das kostenfreie Plugin Cookie Notice von dFactory bewährt. Das dürfte aber – wenn überhaupt – nur noch für WordPress-Installationen reichen, die keine weiteren Plugins oder Codes nutzen.

Unter Einstellungen/Cookie Notice/Meldungstext folgenden Text auf die eigene Seite anpassen und einfügen: „Wir verwenden Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unsere Website zu analysieren. Außerdem geben wir Informationen zu Ihrer Verwendung unserer Website an unsere Partner für soziale Medien, Werbung und Analysen weiter. Unsere Partner führen diese Informationen möglicherweise mit weiteren Daten zusammen, die Sie ihnen bereitgestellt haben oder die sie im Rahmen Ihrer Nutzung der Dienste gesammelt haben.“ (Quelle).

Weiterlesen-Link aktivieren einschalten, beim Text „Datenschutz“ eintragen, Seitenlink wählen und die eigene Datenschutzerklärung auswählen. Bei Cookie-Gültigkeit ist aus meiner Sicht 1 Jahr ok.

Social Buttons

Fast immer übertragen Social Buttons Cookies um den Nutzer über Seitengrenzen hinweg zu verfolgen. Das ist im Vergleich zur reinen Übertragung der IP bei Google Fonts ein großes Datenschutz-Thema. Mindestens ein Hinweis auf die Datensammlung in der Datenschutzerklärung ist Pflicht. Unbedingt empfehlenswert ist es, das Sammeln erst zuzulassen, wenn der Nutzer einen Button klickt. Die Zeitschrift c’t hat schon vor Jahren mit dem Shariff ein passendes Tool entwickelt. In WordPress lässt sich das Tool hervorragend mit dem Shariff Wrapper einbinden.
Ich persönlich sehe die Datensammlung hier wirklich kritisch und habe alles rausgeworfen, denn die Anzahl der Interaktionen auf diese Buttons ist im Vergleich zur Datensammlung völlig unverhältnismäßig. Abgesehen davon lädt die Seite deutlich schneller.
Reine Icons mit Links reichen vollkommen aus und so, wie ich sie auf dieser Seite oben rechts verwende sind sie etwas völlig anders: nämlich nur ganz normale Links und damit völlig unkritisch. Hier werden keine Daten von fremden Servern bezogen (=keine Preisgabe der IP-Adresse), es können damit keine fremde Cookies gesetzt und die surfende Person nicht mehr verfolgt werden. Das verlinkte Bild/Icon muss dann auf dem eigenen Server liegen. Viele Template bieten mit Font Awesome eine passende Lösung.

Kontaktformular

Wer Contact Form 7 einsetzt, sollte im Kontaktformular oberhalb des Buttons senden einen Hinweis einblenden:

[acceptance acceptance-854] Mit dem Absenden Ihrer Anfrage erklären Sie sich mit der Verarbeitung Ihrer übermittelten Daten zum Zweck der Bearbeitung Ihrer Anfrage einverstanden (LINK: Datenschutz) [/acceptance]

Ziel ist hier, das der Nutzer vor Absenden seiner Daten über die Verarbeitung hinreichend informiert ist. Bei Kontaktformularen bitte immer auf Datensparsamkeit achten und nicht nötige Felder optional machen. Das bedeutet nicht, das man nicht nach dem Namen fragen darf – es ist schließlich ein berechtigtes Interesse eine persönliche Anfrage auch persönlich beantworten zu können.

YouCanBook.me

Als Unternehmen aus England unterliegt YouCanBook.me dem EU-Recht und hat die DSGVO-Anpassungen vorgenommen. Nach dem nächsten Einloggen stimmt man den neuen Vertragsbedingungen zu und erhält per eMail ein signiertes Dokument, welches als AVV gilt. Unter anderem gibt es einen Einwilligungs-Button für die Datenverarbeitung.

Die Integration in WordPress ist damit nach einem Opt-In unkritisch, wenn in YouCanBook.me auf die Datenverarbeitung hingewiesen wird. Um YCB.me direkt in die eigenen Seiten einzublenden empfehle ich das Plugin iframeoder Elementor. Der Code für die WordPress-Seite lautet (XXXXXX durch die eigene Domain ersetzen)

<iframe width="100%" height="1000" src="https://XXXXXX.youcanbook.me/?noframe=true&skipHeaderFooter=true" style="width:100%;height:1000px;border:0px;background-color:transparent;" frameborder="0" allowtransparency="true" onload="keepInView(this);"></iframe><script>function keepInView(item) {if((document.documentElement&&document.documentElement.scrollTop) || document.body.scrollTop>item.offsetTop) item.scrollIntoView();}</script>

Ich selbst nutzte YouCanBook.me nicht mehr, sondern setze auf Calendly – das Produkt ist wirklich hervorragend gemacht und aus meiner Sicht der aktuell beste Terminverplaner. Die Integration erfolgt ebenso mit einem iFrame. Im Gegensatz zu YouCanBook.me gibt es für die Datenschutzkonforme Einbindung ein Template im Real Cookie Banner.

Newsletter

Nach diversen Experimenten nutze ich als Mail-Versender nur noch MailChimp und bin sehr zufrieden. Die DSGVO (hier: GDPR) wurde intern hervorragend umgesetzt (explizite Speicherung der Zustimmung für differenzierte Werbekanäle, angepasste Formulare usw., Details hier). Wie immer braucht es einen unterschriebenen Auftragsverarbeitungsvertrag ( PDF ). Die rechtliche Einschätzung gibt RA Schwenke in seinem Blog-Artikel ausführlich.

Ein paar Worte zu den anderen Newsverteilern: CleverReach hat einen völlig unbrauchbaren Template-Editor, Getresponse ständig Fehler bei komplexeren Aufgaben und KlickTipp ist vor allem vermutlich deshalb hoch gelobt, weil es sehr hohe Affiliate-Provisionen gibt. Dabei sind Einschränkungen wie der fehlende Template-Editor und das Bulk-Hinzufügen von eMails auf 10 Stück/Tag bei fast 30 €/Monat völlig unverständlich.

Bei einem Newsletter muss der Kunde informiert werden, warum er seine Daten hergibt und was er dafür bekommt. Ich habe das mit einer eigenen Seite umgesetzt: https://markus-kaemmerer.de/kontakt/newsletter/, welche stark von der Seite von Dr. Schwenke inspiriert ist. Ein Eintrag in der Datenschutzerklärung ist trotzdem Pflicht.

Die Fachwelt streitet sich noch, ob ein extra Häkchen gesetzt werden muss, das die Datenschutzerklärungen verstanden worden oder ein Hinweis reicht. Ich denke, das ein Hinweis ausreichend ist. Hier auf der Seite rechts unten habe ich es mit dem Link „Inhalt, Datenschutz, Analyse und Widerruf“ umgesetzt, der direkt am Button ist. Ein Double-Opt-In ist selbstverständlich.

Wer Elementor als Pagebuilder nimmt, hat es leicht: Mailchimp und alle anderen relevanten Mailversender (leider nicht das deutsche CleverReach) sind integriert – es ist kein extra Plugin nötig. Jedes Formular kann einfach zum Einschreiben in den Newsletter genutzt werden. Die Umsetzung ist vorbildlich und mindestens so umfangreich wie die der Formular-Plugins.

Eine Möglichkeit der Integration von Mailchimp ist das Plugin MailChimp for WordPress es unterstützt aber noch nicht die neuen DSGVO-Funktionen von Mailchimp. Es erlaubt seit Version 4.2.2. explizit die Zustimmung mit einer Checkbox. Mit dem Plugin lässt sich ein Anmelde-Formular an fast allen Stellen in WordPress komfortabel unterbringen. Vom gleichen Anbieter kommt das Plugin Boxzilla, welches einfliegende Boxen wie hier auf der Website zu sehen komfortabel ermöglicht.

Das Plugin Convert Pro ist im Astra Package mit enthalten oder kann extra gekauft werden. Mit ihm ist ein sauberes Double-Opt-In möglich und es werden ebenfalls alle gängigen Mailverteiler unterstützt. Mit diesem Plugin sind alle Arten von Einschreibeformularen, Bannern, Info Bars usw. leicht umzusetzen. Ich empfehle, das Astra Growh Bundle zu nutzen, da ist Covert Pro und Schema Pro gleich enthalten. Die Lifetime-Lizenz rechnet sich, wenn man ein paar Jahre Nutzungszeit einplant. Convert Pro ersetzt damit Boxzilla + MailChimp for WordPress komplett.

Völlig ohne Plugin funktioniert die Einbindung mittels Javascript. Unter dem Account Menü in Mailchimp rechts oben den Punkt Connected Sites wählen, dort das JS kopieren und im Head-Bereich in WordPress einbinden. Dann lassen sich schick aussehende Pop-up Forms auf der eigenen Seite einblenden, die explizit die nötige DSGVO-Einwilligung holen. Ob und wie mit dem JavaScript Code ein Tracking stattfindet ist nicht bekannt und evtl. braucht es einen Hinweis im Cookie Consent, mindestens jedoch in der DSE.

WordPress Performance

Für ein DSGVO-konformes WordPress sind die folgenden Plugins nicht nötig. Für eine schnelle und sichere WordPress-Seite jedoch Pflicht. Hier ein paar Tipps aus vielen Jahren Erfahrung von mir:

Cache Plugins

Jede Installation sollte ein Cache-Plugin laufen haben. Technik-Freaks und erfahrene nutzen W3 Total Cache. Alle anderen Cache Enabler. Wer deutschsprachigen Support und maximale Leistung wünscht, kauft WP Rocket oder Borlabs Cache. Ein Cache Plugin ist aus Sicht der DSGVO nicht nötig, aber auch unschädlich. Für eine gute Geschwindigkeit und Sichtbarkeit des Blogs sind sie jedoch unumgänglich. Google misst die Geschwindigkeit einer Webseite mit den Core Web Vitals. Im Sommer 2021 wird Google die Ergebnisse der Geschwindigkeitsmessung der Webseite in den Index mit aufnehmen. Das erhöht die Bedeutung einer schnell ladenden Seite nochmals. Ein Cache-Plugin ist also das mindeste, was eine schnelle Webseite braucht.

Cache Enabler

Wer einfach nur ein schnelles WordPress ohne viel Bastelei möchte, sollte Cache Enabler nutzen. Es ist das schnellste und unkomplizierteste Cache Plugin in der relativ großen Auswahl von Plugins. Der Vorteil: Es ist quasi keine weitere Konfiguration nötig.

W3 Total Cache Konfiguration

Hier die Basis-Konfiguration, die sinnvoll und relativ unkritisch ist und für jeden gängigen Server funktionieren müsste:

Tab Performance/General Settings:

Einschalten: Page Cache, Minify, Browser Cache und der Rest ausgeschaltet

Tab Page Cache:

Einschalten: Cache posts page, Cache feeds, Cache SSL, Don’t cache pages for logged in users, Cache Preload

Tab Minify:

JS minify Settings: Einschalten und Combine only wählen (außer, man verwendet Autoptimize, dann ausschalten)

CSS minify Settings: Einschalten und Combine only wählen (außer, man verwendet Autoptimize, dann ausschalten)

Database Cache: Nur einschalten, wer einen eigenen Server betreibt

Tab Browser Cache:

Die ersten fünf Optionen mit „Set …“ einschalten und ebenso Enabhle HTTP compression

Das gleiche für den Bereich CSS & JS und HTML & XML sowie Media & Other Files

Unter dem Tab Extensions die Extensions für AMP, CloudFlare, Yoast SEO aktivieren, sollte einer der Plugins laufen. Die anderen Extensions ausschalten.

WP Rocket


Lange Zeit habe ich mich gegen ein kostenpflichtiges Coaching-Plugin entschieden, da es im Gegensatz zum Cookie Content hier kostenfreie und gute Lösungen auf dem Markt gibt (siehe oben). Doch der Aufwand, eine Webseite zu optimieren steigt ständig und die Anzahl der Probleme nehmen mit der Komplexität der Seite, der Themen, der Pagebuilder und der Plugins dramatisch zu. Ich teste deshalb seit ein paar Monaten WP Rocket und bin begeistert: Schneller kann man seine Seite nicht mit ein paar wenigen Klicks optimieren. Alles läuft automatisch und erreicht mindestens die Ergebnisse von optimal konfigurierten Plugins (Cache Enabler + FVM). Seit kurzem sind außerdem Features enthalten, welche die kostenfreien Plugins nicht bieten: unbenutztes CSS entfernen (Beta, macht richtig was aus!), JavaScript verzögert laden (wird teilweise bei anderen Plugins auch gemacht) und JavaScript-Ausführung verzögern – das kenne ich von keinem anderen Plugin bis jetzt. Für alle, die ein paar Euro ausgeben (44€/Jahr für eine Seite oder 88 €/Jahr für 3 Seiten) möchten und hervorragend Leistung mit deutsprachigem Support wünschen ist WP Rocket optimal. Nur wer sich richtig gut auskennt, sollte die folgenden Plugins statt dessen testen:

Optimierungs-Plugins

Autoptimize

Das Plugin Autoptimize hilft einerseits die Geschwindigkeit des Blogs zu erhöhen, wenn CSS + JS Kombinieren und Minimieren aktiviert ist, andererseits schmeißt es ein paar alte WordPress-Lasten heraus und kann die Google Fonts lokal einbetten. Seit Version 2.4 kann das Plugin auch Bilder minimieren. Weiterhin sind ab dieser Version Probleme mit dem Thrive Architect beseitigt. Einige Themes erledigen das CSS+JS-Thema intern (z.B. Enfold, AVADA), dann würde ich immer die interne Version nutzen, aber nicht beide.

Fast Velocity Minify

Besonders für Experten ist Fast Velocity Minify geeignet. Es ist eine gute Alternative zu Autoptimize. Ich habe in meinen Tests gute Erfahrungen mit diesem Plugin gemacht. Seit Version 3 wurde das Grundprinzip und die Konfiguration komplett überarbeitet. Die Leistung hat sich damit nochmals erhöht, der Konfigurationsaufwand aber auch. Das Plugin macht so besonders auf Seiten mit HTTP/2 auf dem Server sinn.

Grundsätzlich würde ich Einstellungen/Fast Velocity Minify/Settings/Fix Page Editors aktivieren.

Wer Fast Velocity Minify mit dem Borlabs Cookie Plugin nutzt, muss unter Einstellungen/Fast Velocity Minify/Settings/Ignore the following CSS and JS paths below die Zeile borlabs-cookie.min.js einfügen, da sonst die Cookie Meldung nicht angezeigt wird.

WordPress Sicherheit

WordPress liefert rund 25% der weltweiten Webseite-Inhalte aus. Damit ist das System höchst attraktiv für automatisierte Angriffe. Jeder sollte sich darum kümmern. Meiner Meinung nach ist die Installation des Wordfence Security Plugins sinnvoll. Seit Version 7.1.5 ist das Plugin DSGVO-Konform (Quelle) und ein Auftragsverarbeitungsvertrag ist verfügbar. Rein aus DSGVO-Sicht ist die Installation dieser Plugins nicht nötig.

Wordfence

Das Sicherheits-Plugin Wordfence (DSGVO kompatibel, AVV vorhanden) hat zwei Hauptfunktionen: Ein Web Application Firewall (WAF) und ein Security-Scanner. Die Firewall kann man mit dem Installations-Tool einfach einschalten und sollte dann transparent laufen. Wer ein Cloudflare vorgeschaltet hat und mindestens den Professional Plan ($20/Monat/Domain) hat, sollte dort den WAF aktivieren und in Wordfence abschalten.

Der Scanner läuft im Hintergrund regelmäßig und meldet Veränderungen an der WordPress-Installation. Man erhält relativ viel eMails, die man in der Konfiguration etwas reduzieren kann (Empfehlung: Only alert me when that administrator signs in from a new device or location aktivieren). Unter Wordfence/All Options/Disable Wordfence Cookies einschalten. Weiterhin muss Participate in the Real-Time Wordfence Security Network abgeschaltet werden, weil IP-Adressen übertragen werden.

Unbedingt unter Wordfence/All Options/Enable live traffic logging abschalten. Die Option kostet unnötig Performance und lädt ein Javascript nach, um zu schauen ob ein Mensch auf der Seite ist.

Wer Probleme hat, das der Scan nicht durchläuft: Unter Wordfence/All Options rechts oben Expand All wählen, dann in der Option Use low resource scanning einschalten und Maximum execution time for each scan stage eine 15 eintragen und speichern.

Tipp: Wer den Thrive Architect mit Wordfence nutzt und beim Speichern eines Posts eine leere Seite mit Datum sieht, sollte Wordfence nochmal in den Firewall-Lernmodus schalten, um das das Problem zu beseitigen.

Cloudflare Web Application Firewall (WAF)

Wer eine größere Seite betreibt oder wo Sicherheit und Performance eine besondere rolle spielen, empfiehlt sich der Einsatz von Cloudflare mit der Web Application Firewall (WAF). Pro Domain werden $20/Monat fällig, dafür ist die Seite aber maximal abgesichert und wird deutlich performanter, ohne das ein weiteres Plugin installiert werden muss (das Cloudflare Plugin empfiehlt sich trotzdem zu nutzen). Geht es nur um Geschwindigkeit, kann man die Automatic Platform Optimization for WordPress buchen – das kostet nur $5/Monat/Domain. Es entfällt die Firewall, man sollte also Wordfence & Co nutzen. Mehr Infos im Artikel Cloudflare mit WordPress.

WordPress Themes

Theme und Pagebuilder-Auswahl

Es gibt eine Reihe von großen Template und dazu passenden Pagebuildern. Komplett unbrauchbar finde ich den Cornerstone aus dem X-Theme von theme.co. Das könnte sich mit dem Pro aus gleichem Hause bessern. Sehr gut ist Thrive mit dem Thrive Architekten. Ich nutze seit einer Weile AVADA mit dem Fusion Builder und kann es absolut empfehlen. Die Subthemes kann man sich auch teilweise importieren und so viel Zeit sparen. Laut des Support-Forums wird bei AVADA an der DSGVO-Konformität gearbeitet.

WP Astra

Nachdem ich mit gefühlt jedem größeren Thema und Pagebuilder gearbeitet habe, bin nach vielen Momenten der Verzweiflung auf WP Astra umgestiegen. Das Theme ist neben GeneratePress eines der wenigen Themes, die von Grund auf mit moderner Architektur und dem Blick auf Seitenladezeiten und Bedienbarkeit entwickelt wurden. WP Astra ist extrem klein, schnell, hervorragend bedienbar und wird stetig weiter entwickelt, ohne immer aufgeblähter zu werden. Ich würde heute kein WordPress mehr ohne Starten. Mit den Premium Starter Templates ist eine kleine Webseite schneller stellt und den Rest passt man nach und nach an. Ich empfehle das ganze WP Astra Bundle (siehe oben). WP Astra enthält im Gegensatz zu AVADA, DIVI und Thrive keinen Pagebuilder, es ist also quasi die Leinwand. Den Pinsel holt man sich in Form von Elementor dazu:

Elementor

Endlich ein moderner und ausgewachsener Pagebuilder. Es ist alles enthalten, was ich mir denken kann und (leider) noch viel mehr. Zum Glück kann man alles abschalten, was man nicht braucht und seit Version 3.1 wird auch nicht mehr jeder Balast jeder möglichen Konfiguration mitgeschleppt. Elementor wird wieder schlanker und schneller. Die Google Core Web Vitals zeigen auch hier Wirkung.

AVADA

Das Theme AVDA ist seit Version 5.5.2 auf die DSGVO angepasst. Unter Avada/Erweiterte Einstellungen/Privacy lassen sich jetzt die Google Fonts lokal laden (Quelle) und eingebettet Inhalte (YouTube, Vimeo, SoundCloud, Facebook, Flickr, Twitter und Google Maps) nur nach Hinweis auf die DSE und extra Klick zugänglich zu machen. Damit spart man sich extra Plugins wie WP YouTube Lyte – hat allerdings keine Video-Vorschau, die dieses Plugin bietet.

Außerdem gibt es ein neues Element für die DSE mit der man global die Zustimmung zum Einholen der o.g. dynamischen Inhalte ohne extra Klick geben kann. Weitere Features sind oben verlinkt. AVADA enthält einen CSS und JS Compiler, so das Autoptimize bei diesem Theme nicht zwingend benötigt wird.

Enfold

Das Theme Enfold wurde mit Version 4.4 auf die DSGVO angepasst. Es erlaubt das hochladen von eigenen Fonts, hat einen Cookie Bar mit sehr gut gemachtem Cookie-Info Dialog und ähnlich wie AVADA eine Zwei-Klick-Lösung für die Integration von Facebook, YouTube und Co. Ein Plugin wie Autoptimize wird nicht benötigt, da Minify + Merge von CSS und JS sowie das Abschalten der Emoji/Smiley enthalten sind.

DIVI

Ich habe so oft über DIVI geflucht (und fluche noch auf den von mir betreuten Seiten), als das ich hier nur schreiben möchte: Holt euch was modernes, wenn ihr könnt. Siehe meine Empfehlung oben.

Hosting konfigurieren

Beim Hoster der Website sollte das vorhalten der Access-Logs und Webriten-Logs konfiguriert werden, das möglichst wenig Daten möglichst kurz erhoben werden. Bei Domainfactory geht das unter Statistik & Logfilekonfiguration/Umgang mit Logfiles mit Keine Logfiles erzeugen. In die DSE sollte der Hinweis, wie lange der Hoster speichern muss. Bei Domainfactory (df.eu) nachzulesen unter sind es maximal 3 Tage inkl. IP.

SSL Verschlüsselung

Eine Absicherung der Seite mit SSL ist heute quasi Pflicht. Spätestens, wenn Chrome ab Juli 2018 Seiten ohne SSL Verschlüsselung deutlich als unsicher markiert (Quelle) und Google Seiten ohne SSL im Index schon länger abstraft.

Es gibt mehrere Möglichkeiten, die eigene Website SSL zu verschlüsseln. Dazu muss ein SSL Zertifikat erstellt werden. Die meisten Hoster bieten das kostenfrei oder kostengünstig an. Bei Domainfactory ist das erste AlphaSSL Zertifikat im Paket meist kostenfrei, jedes weitere kostet knapp 2 €/Monat. Möglicherweise lohnt ein Paketwechsel, da in größeren Paketen ab 10 €/Monat das Zertifikat enthalten ist. Andere Hoster bieten kostenfreie Zertifikate über Let’s Encrypt an – das reicht völlig.

Nach der Installation des Zertifikates müssen unter Einstellungen/Allgemein beiden URLs von http:// auf https:// geändert werden. Weiterhin sollte man eine permanente Weiterleitung von http auf https implementieren. Dazu mit einem ftp-Programm die Datei .htaccess im WordPress Hauptverzeichnis um folgende Zeilen ergänzen:

RewriteCond %{HTTP_HOST} ^storemotion\.de
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

Achtung: Wer hier was falsch macht, schießt die Seite komplett ab. Unbedingt die .htaccess vorher sichern.

Bitte auch daran denken, das https-Property in der Google Search Console zu verifizieren.


Es sind hier Tests nötig, ob die Seite komplett verschlüsselt ist. Siehe unten.

SSL mit Cloudflare

Eine weitere Möglichkeit die eigene Seite SSL verschlüsselt auszuliefern ist die Nutzung von Cloudflare. Neben der besseren Geschwindigkeit und dem Schutz vor Attacken kann Cloudflare die eigene Seite über SSL erreichbar machen. Wie das geht steht im extra Artikel Cloudflare mit WordPress.

Testen

Nachdem die WordPress Installation umgestellt wurde, sollten mindestens zwei Themen getestet werden: SSL und Cookies. Alle anderen DSGVO-Themen sind extra zu betrachten. Tracking-Codes lassen sich schnell und einfach mit dem Tool Ghostery erkennen. Das Web-Tool webbkoll ist für erfahrene Nutzer ebenso empfehlenswert.

Cookies testen

Im Chrome ist alles integriert: rechts oben auf die drei Punkte klicken, dann Weitere Tools und dort Entwicklertools wählen. In den Tabs auf „Application“ gehen. Links im Bereich Storage werden jetzt die Cookies angezeigt. Vorher alle AdBlocker und Privacy-Extensions für diese Domain abschalten. Möglicherweise muss man alle alten Cookies einmal löschen (rechte Maustaste, Clear wählen) und dann mit Strg-R die Seite neu laden um zu sehen, welche gesetzt werden. Die meisten Cookies von der eigenen Domain sind verhältnismäßig unkritisch. Bei Cookies einer anderen Domain ist genau zu prüfen, wann die gesetzt werden. WordPress legt für eingeloggte Nutzer, Kommentatoren und aus weiteren Gründen Session Cookies an, das ist normal und unschädlich.

SSL Verschlüsselung testen

Eines der häufigsten Probleme bei der Umstellung auf SSL ist sogenannter Mixed Content. Wenn auf einer Webseite Elemente unverschlüsselt vom Server geladen werden, erkennt der Browser das die Seite nicht komplett sicher ist und verweigert das grüne Symbol in der URL Leiste. Bei WordPress sind es häufig Bilder, die in Page Buildern geladen wurden und extern geladene Badges. Um zu erkennen welche Ressource unverschlüsselt geladen werden, wie unter Cookies beschrieben den Entwickler-Modus öffnen und dort unter dem Tab Console schauen. Für jede Datei, die nicht über SSL abgesichert ist, wird dort ein roter Eintrag gemacht. Diese Einträge können von Hand korrigiert werden oder man lässt sich durch das Plugin SSL Insecure Content Fixerdabei unterstützen. Eingebettete Javascript Codes/Tracker/Badges sind meist von Hand zu korrigieren. Im Extremfall muss jede einzelne Seite der WordPress Installation geprüft und geändert werden. Eine weitere Möglichkeit ist, CloudFlare vor die Website zu schalten und sich das Suchen nach Mixed Content zu sparen.

Weiteres Rechtliches

Wie bis jetzt auch braucht jede Webseite ein korrektes Impressum und eine vollständige Datenschutzerklärung. Das Impressum lässt sich leicht über die bekannten Generatoren erstellen. Bei der Datenschutzerklärung würde ich den Datenschutz-Generator nehmen. Der gleiche Anwalt hat den t3n Datenschutz-Guide geschrieben. Für 99 € erhält man hier auch einen ganzen Stapel weiterer Vorlagen. Da die Online-Lizenz für eine Firma gültig ist, kann es günstiger sein den Guide zu kaufen, als den Generator zu nutzen.
Übrigens: Nur wer Waren/Dienstleistungen in anderen Sprachen auf der Website beschreibt, braucht auch für diese Sprachen eine passende Datenschutzerklärung.

Die Links zum Impressum und zur Datenschutzerklärung müssen von jeder Seite leicht erkennbar und erreichbar sein. Am einfachsten ist es, die Links im Footer unterzubringen, der auf jeder Seite gezeigt wird. Unbedingt die mobile Version der Website prüfen, ob hier die Links auch sichtbar und klickbar sind. Ich empfehle für Impressum und Datenschutzerklärung jeweils einen eigenen Link auf eine eigene Seite. Für die Datenschutz-Seite empfehle ich ein noindex zu setzen, so das die Seite nicht im Suchindex der Suchmaschinen auftaucht und damit bei automatisierter Suche nach Abmahnfähigen Texten nicht gefunden wird. Am einfachsten geht es mit Yoast SEO: das Zahnrad klicken, dort bei „Erlaube Suchmaschinen diesen Seite in den Suchergebnissen anzuzeigen?“ auf „Nein“ stellen.

Auftragsverarbeitungsverträge

Es ist nötig, mit dem eigenen Hoster und allen weiteren Dienstleistern, die persönliche Daten erheben und verarbeiten Auftragsverarbeitungsverträge (AVV) zu schließen.

Hier eine kurze Liste von direkten Links zu den AVVs:

Weiterführende Links

Datenschutz Generatoren

Es gibt verschiedene Generatoren, um eine Datenschutzerklärung zu erstellen

Achtung: Oft wird von Übernahme der Haftung gesprochen. Hier das Kleingedruckte genau lesen: Anwälte sind per se für die Übernahme der Haftung bei Falschberatung u.ä. verpflichtet und dafür versichert. Damit Werbung zu machen finde ich unlauter. Das ist also immer enthalten, wenn ein Rechtsanwalt eine Datenschutzerklärung macht. Mit den Abmahnkosten bzw. eigene Rechtskosten hat das jedoch nichts zu tun.

Facebook-Gruppen

Bonus Tipps

Bilder verkleinern

Die Ladezeit einer Website hängt hauptsächlich von der Anzahl der angeforderten Dateien (Zahl der HTTP-Requests) und deren Größe ab. Beides sollte reduziert werden. Die Bildgröße lässt sich meist einfach reduzieren. Das Tool JPEGmini reduziert JPGs ohne sichtbaren Qualitätsverlust. Eine Skalierung auf die passende Bildgröße lässt sich auch einstellen. Für alle Bilddateien (inkl. SVGs) eignet sich ImageOptim (nur Mac oder online). Es gibt auch eine Reihe von WordPress-Plugins, die ähnliches erledigen.

Impressum auf Login-Seiten/Baustellenseiten?

Die Frage nach der Impressumspflicht auf temporären/Baustellenseitentaucht regelmäßig auf. Die Kurzfassung: Ein Impressum ist nötig, wenn auf der Seite eine  eine geschäftliche Tätigkeit dargestellt wird, also eine objektiv eigenen oder fremden Absatz fördernde Maßnahme vorhanden ist. Dazu reichen kleine Indizien. Eine reine Login-Seite hat diese normalerweise nicht.

Eine Datenschutzerklärung braucht es dann, wenn persönliche Daten verarbeitet werden. Die ist u.a. der Fall, wenn der Hoster die IP-Adresse vollständig, also nicht anonymisiert, speichert.

Revisionen von Seiten und Beiträgen

Mit dem Eintragen von

if (!defined('WP_POST_REVISIONS'))

define('WP_POST_REVISIONS', 6);

In die wp-config.php lässt sich die Zahl der Revisionen begrenzen. Mit define('AUTOSAVEINTERVAL', 3600 ); die Zyklen bei der Speicherdauer verlängern.

Broken Link Checker

Mittels des Plugins Broken Link Checker lassen sich mittels Suchen- und Ersetzen die im Blog vorhandenen http auf https-Links umschalten, in dem man die Links im Tab „Umleitungen“ anschaut und korrigiert. Das geht zwar auch mit dem Better Search Replace Plugin, allerdings dann ohne Kontrolle.

29 Kommentare zu „DSGVO für WordPress Praktiker 2023“

  1. Danke für den Beitrag!
    Wie ist es bei einem komplett privaten nicht kommerziellen Blog? Muss ich da ein ein vollständiges Impressum angeben?

    1. Markus Kämmerer

      Die Rechtssprechung ist in diesem Punkt nicht so ganz eindeutig, vor allem da die Abgrenzung von privat zu nicht privat nicht trivial ist. Ich empfehle, immer ein Impressum zu verwenden.

    1. Markus Kämmerer

      Solange Font Awesome vom eigenen Server geladen wird, ist alles fein. Andernfalls trifft das gleiche wie für die Google Fonts zu – Du müsstest es dann mindestens in die DSE schreiben.

  2. Mal sehr schön und ohne Panikmache vieles rund um die DSVGO für WP-Nutzer zusammen gefasst. Habe selbst auch noch 2, 3 Baustellen – werde hier aber auch nicht in Panik verfallen …

    Die Checkbox in der aktuellen WP-Version verstehe ich nicht. Hier hätte ich etwas in der Art erwartet, dass mit dem Anhaken der Datenspeicherung und der DSE zugestimmt wird.

    1. Markus Kämmerer

      Hi Mark, zum heutigen Stand ist der Vertrag von Automattic noch nicht verfügbar. Ich habe den Hinweis auf diese Tatsache und die Quelle mit aufgenommen.

  3. Wenn der Kommentierende keine Mail-Adresse hinterlässt, kann er/sie sich später nicht „ausweisen“, um eine Löschung zu verlangen.

  4. Für 2-Klick-Lösung für Videos habe ich „Embed videos and respect privacy“ (Youtube, blendet Text und Link auf Datenschutz-Seite von Youtube ein) und „Lazy Load for Videos“ (Vimeo, kann auch youtube, aber keinen Erläuterungstext) im Einsatz.

  5. Super Text. Eine Frage: Ich sehe immer wieder in DSE, dass die weitergeleiteten Daten nur in Länder gehen, in denen ein der eu entsprechender Sicherheitsstandard herrscht. Ich sitze in Argentinien, und gehe mal davon aus, dass der Sicherheitsststandard ein anderer ist. Der Server des Hosts – SiteGround – steht in Holland. Was kann ich in die DSE aufnehEn?

  6. Ich lese bei Smileys immer:

    >> Unter Einstellungen/Schreiben/ Emoticons wie :-) und :-P in Grafiken umwandeln abschalten, denn hier wird die IP-Adresse übertragen. Alternative: Hinweis in den Datenschutzerklärungen (DSE) <<

    Diesen Punkt gibt es in meiner Installation nicht.
    Ich habe es mit einem Code in der function.php gemacht:

    /* Entfernt die Emojis/Scripte/Styles im Frontend */
    remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
    remove_action( 'wp_print_styles', 'print_emoji_styles' );

    /* Entfernt die Emojis/Scripte/Styles im Backend */
    remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
    remove_action( 'admin_print_styles', 'print_emoji_styles' );

    Die Smileys lade ich per wp-Monalisa direkt aus meinem WordPress heraus.

  7. Wie ist es mit Bloggern, die kostenlose Blogs bei WordPress unterhalten? Ich kann weder ein Plugin installieren (erst ab Businesstarif möglich) und im Dashboard ist auch nicht das Update WordPress 4.9.6 vorhanden. Kann ich überhaupt etwas updaten? Ich lese schon seit Wochen sehr viel und finde deine Zusammenfassung der notwendigen Änderungen im Blog sehr gut. Nur leider sehe ich es für meinen Blog ziemlich schwierig an ihn datenschutzkonform zu machen außer Gravatare und Emojis abzuschalten. LG Undine

    1. Markus Kämmerer

      Das Thema WordPress.com ist aktuell nicht sauber klar. Scheinbar gibt es ein paar Sachen, die eine vollständige DSGVO-Konformität aktuell unmöglich machen. Ich gehe davon aus, das da bald nachgezogen wird. Bis dahin heißt es: alles tun, was möglich ist und eine korrekte DSE nutzen.

  8. Sehr umfassender Beitrag mit vielen Informationen.

    Mein Kritikpunkt dabei: Er setzt auf der allgemeinen Hysterie zum Thema auf, anstatt da mal die Luft rauszulassen. Beispiel GOOGLE Fonts. Ein Hinweis in der Datenschutzerklärung und der Cookie Notice und die Sache sollte erledigt sein. Die DSGVO gibt es ja wegen Google & Co. Und sie ist ein Angriff auf die Freiheit des Internets, wenn auch der Datenschutz berechtigt ist. Vielleicht reicht es ja aus, den SINN der DSGVO zu verstehen, anstatt hektisch irgendwelche scheinbaren Sicherheitsmaßnahmen umzusetzen und sich selber aus dem Spiel zu nehmen.

    Stichwort Abmahnungen: Wer soll weshalb abmahnen? Es ist vorgesehen, bei einem Verstoß gegen die DSGVO – den man erst einmal gerichtsfest nachweisen muss (wie eigentlich?) – meldet man es den zuständigen Datenschutzbeauftragten, der Aufsichtsbehörde oder der Polizei. Bei der Einbindung von Google-Fonts? Wegen der Speicherung eines Cookies? Weshalb? Welcher Schaden ist dann wem entstanden und wie ist das belegt?

    Ist ein solcher Verstoß also gemeldet und bei der Datenschutzbehörde vorliegend, soll diese HELFEN, die Mängel zu beseitigen und kann Ermahnungen aussprechen.

    Das ist also ganz wichtig: Wenn du als kleiner Webseitenbetreiber eine Abmahnung von einem (in der Regel) kriminellen Anwalt erhälst, zerknüllst du den Wisch und verrichtest dein Tagwerk weiter, wie gehabt.

    1. Markus Kämmerer

      Mein Beitrag ist gerade gegen die allgemeine Hysterie entstanden. Deshalb ist z.B. meine deutliche Empfehlung bei Google Fonts sich entsprechend zu entspannen und nur einen Hinweis in die DSE zu übernehmen. Ein Hinweis in der Cookie Notice erscheint nicht sinnvoll, da kein Cookie gesetzt wird.
      Auch zum Thema Abmahnung steht am Anfang fett, das ich das Problem nicht so kritisch sehe, wie es oft berichtet wird.
      Von deinem letzten Hinweis möchte ich dringend abraten: JEDE Abmahnung muss sauber bearbeitet werden, selbst wenn sie unberechtigt und falsch ist, da man im Zweifelsfall bei Prozess oder einstweiliger Verfügung sein eigenes Recht erst auf eigene Kosten durchsetzen muss.

  9. Super recherchiert, echt toll gemacht. Bin gerade über FB auf den Artikel gestoßen.
    Könnten 4 Beitrage auch sein, lang genug ist der Artikel sicher. ?
    Aber hervorragend recherchiert und viel Backgroung-Wissen ?
    lg Markus

  10. Fucking Facebook… bin von da auf deinen Artikel gestoßen, und beim Schreiben rausgeworfen geworden. Gratuliere, echt super recherchiert. ?
    Könnten auch 4 Beiträge sein, soviel wie du behandelst. Das beste was ich bis jetzt zu diesem Thema gesehen habe.

  11. Dankeschön für die Zusammenfassung. Wäre vielleicht nicht schlecht nach einem Jahr und vor allem im Lichte des gestrigen EUGH-Urteils zu Tracking-Cookies den Artikel noch einmal zu überarbeiten.
    Beste Grüße

  12. Sehr umfassender Artikel. Viel zu lesen. Eine Menge neuer Input. Danke!
    Ich hatte für mich und meine Kunden wegen den „Opt-in-Neuerungen“ das Plugin Pixelmate schon fast gebucht. Da ich aber viele AVADA Installationen fahre, die Einstelloptionen dort mit denen für die Opt-in-Notwendigkeit nochmal verglichen. Ich meine, damit wäre doch Genüge getan – oder blicke ich irgendwas nicht? Da Du auch mit AVADA arbeitest, hast Du evtl. Input dazu. Danke! Beste Grüße

    1. Hi André, leider kann ich es dir nicht ganz konkret sagen, da ich vom AVADA auf Astra umgestiegen bin, dort braucht es was ‚eigenes‘. Bei dem Detail, ob es reicht streiten sich glaube ich alle und jeder hat ein bisschen recht. Am sichersten dürftest Du aktuell mit dem Borlabs Plugin fahren, weil es die Richtlinien sehr eng umsetzt. Aber die Wahrscheinlichkeit mit der AVADA Meldung bei sauberer Implementierung (die Scripts laden wirklich erst nach dem Go) ein ernstes Problem zu bekommen ist aus meiner Sicht gering.
      Markus

      1. Hi Markus. Danke. Ein gutes Feedback. Vielleicht hilf es irgendwem: Ich entscheide für den Moment bei den Modulen, die AVADA mitbringt zu bleiben. Dort wo „ich was eigenes brauche“ habe ich für mich PIXELMATE in den Focus genommen. Aber alles ist dynamisch und es ist gut, dazu hier einen Austausch finden zu können!

  13. Danke für den Tipp, die Kombi aus Autoptimize und Borlabs zum Laufen zu bringen. Hat bei mir die ganze Zeit nicht funktioniert und auf der Borlabs-Supportseite hatte ich leider auch nichts hilfreiches gefunden. Jetzt läuft alles, danke! :)

  14. Pingback: DSGVO - Leitfaden zur Umsetzung für Webseitenbetreiber und Blogger | Zeilenabstand.net - Kultur & Digitales

  15. Pingback: Divi Theme DSGVO: Datenschutz & Divi - was Du beachten musst!

Kommentar verfassen

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