Google Analytics DSGVO-konform in WordPress einbinden

Dieser Beitrag erklärt dir, wie die strengen Kriterien der DSGVO zum Umgang mit personenbezogenen Daten bezüglich der Nutzung des Webanalysedienstes Google Analytics eingehalten werden.

Seit dem 25. Mai 2018 ist die neue Datenschutz-Grundverordnung in Kraft, kurz DSGVO(neu), und gilt verbindlich in allen Mitgliedsstaaten der Europäischen Union.

Dieser Beitrag konzentriert sich im Speziellen darauf, die DSGVO-konforme Einbindung des Webanalysedienstes Google Analytics in WordPress zu beschreiben. Es gilt nämlich einiges sicherzustellen: Die IP-Adressen Ihrer Website-Besucher dürfen lediglich anonymisiert erfasst werden und wer nicht getrackt werden möchte, muss die Möglichkeit erhalten, die Erfassung seines Nutzungsverhaltens durch Google Analytics zu verhindern.


Disclaimer: Die Informationen in diesem Beitrag haben wir mit größter Sorgfalt recherchiert. Dennoch übernehmen wir keine Haftung für die Richtigkeit, Vollständigkeit und Aktualität der bereitgestellten Informationen. Diese sind insbesondere allgemeiner Art und stellen keine Rechtsberatung dar. Zur Lösung von konkreten Rechtsfällen konsultieren Sie bitte unbedingt einen Rechtsanwalt.


Wie Sie Google Analytics mit WordPress verbinden

Grundsätzlich gibt es zwei klassische Arten, wie Sie Google Analytics mit Ihrer WordPress-Website verbinden können: manuell durch das Einfügen eines JavaScript-Codeschnipsels in der header.php beziehungsweise footer.php oder mithilfe eines Plug-ins, das diese Arbeit für Sie übernimmt.

Darin wird bereits darauf eingegangen, wie man die IP-Adressen seiner Website-Besucher anonymisiert erfasst, nicht aber, wie die Möglichkeit zur vollständigen Deaktivierung des Webanalysedienstes implementiert werden kann – und dieser kommt nun eine tragende Rolle zu. Alle von uns getesteten Plug-ins zur Einbindung von Google Analytics sind aktuell nicht in der Lage, das dazu erforderliche Opt-out-Cookie zu setzen.

1. Google Analytics via JavaScript einbinden

Wir empfehlen deshalb die manuelle Integration via Code – und zwar direkt in der functions.php Ihres Child Themes. Meines was? Hier entlang: Ein WordPress Child Theme erstellen.

“Ein Child Theme ist eine Art Ableger vom ursprünglichen Theme, das somit zum ‘Parent Theme’ avanciert. Der große Vorteil: Verändert man das Child Theme, bleibt das Parent Theme unangetastet – und jederzeit aktualisierbar, ohne dass die vorgenommenen Anpassungen bei einem Update überschrieben werden. Auf der anderen Seite werden die Einstellungen der Child Themes bei der Anzeige des Website-Frontends denen der Parent Themes vorgezogen.”

Und warum soll der Code jetzt in die functions.php und nicht mehr in die header.php oder footer.php? Weil die functions.php im Child Theme ergänzend zu der des Parent Themes wirkt, während die header.php und footer.php im Child Theme die des Parent Themes komplett ersetzen. Ändert der Entwickler Ihres Themes im Zuge eines Updates etwas daran, was nicht selten vorkommt, müssen Sie den Vorgang jedes Mal wiederholen.

Der Code inklusive IP-Anonymisierung und Opt-out-Cookie kann wie folgt aussehen (Quelle: WordPress Consultant):

<?php

// Google Anaytlics DSGVO Code
function wpc_add_google_analytics() { ?>

<script>

// Verhindert tracking wenn das Opt-Out-Cookie gesetzt wurde (Link in der Datenschutzerklärung angeklickt wurde)

var gaProperty = 'UA-XXXXXXXX-Y'; // hier deine Tracking ID einsetzen

var disableStr = 'ga-disable-' + gaProperty;

if (document.cookie.indexOf(disableStr + '=true') > -1) {

window[disableStr] = true;

}

function gaOptout() {

document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/';

window[disableStr] = true;

}
// Dein persönlicher Google Analytics Tracking Code

(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

}
)(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-XXXXXXXX-Y', 'auto'); // hier deine Tracking ID einsetzen

ga('set', 'anonymizeIp', true); // die letzten 8 Bit der IP-Adressen werden gelöscht und somit anonymisiert

ga('send', 'pageview');

</script>

<?php }

add_action( 'wp_head', 'wpc_add_google_analytics', 10 );

?>

Um zu überprüfen, ob Sie den Codeschnipsel korrekt integriert haben, eignet sich das Tool SEO SiteCheckup. Geben Sie dort einfach Ihre URL ein und wählen Sie im Drop-down-Menü den “Google Analytics Test” aus, bevor Sie den Button “Checkup!” klicken.

Alternativ können Sie im Dashboard Ihres Kontos bei Google Analytics unter “Berichte” und “Echtzeit” einen “Testzugriff senden” und schauen, ob dieser in Ihren Echtzeitberichten auftaucht. Tut er das, hat die Implementierung geklappt. Tut er das nicht, gibt es an irgendeiner Stelle ein Problem. In diesem Fall sollten Sie Ihren Code noch einmal genau durchgehen: Fehlt eine Klammer oder ein Komma? Habe ich meine Tracking-ID korrekt eingefügt? Sind die Dateien meines Child Themes richtig angelegt?