WordPress + Google Analytics: Nur nicht(!) eingeloggte User zählen
Viele Blogs setzen auf Google Analytics oder vergleichbare Tools zur Erfassung der Seitenzugriffe. Das von Google bereitgestellte Snippet wird dazu in alle Unterseiten eingebunden und protokoliert ab diesem Zeitpunkt die Besuche der Seite. Der Betreiber eines Blogs bewegt sich allerdings recht häufig auf der eigenen Seite und verfälscht damit u.U. die Statistik. Um das zu verhindern, bietet es sich an das Analytics Snippet nur einzubinden, wenn der Besucher nicht in WordPress eingeloggt ist. Das reduziert die Verfälschung der Statistik.
Google Analytics für eingeloggte Benutzer deaktivieren
Mit Hilfe einer simplen WordPress-Funktion kann das Snippet nur dann eingebunden werden, wenn der Besucher der Seite NICHT in WordPress eingeloggt ist.
Passt das Standard-Snippet von Google Analytics dazu wie folgt an.
<?php if ( !is_user_logged_in() ) /* Nur laden wenn User nicht eingeloggt ist. */ { ?>
<!-- Google Analytics Snippet -->
<?php } ;?>
Update: Google Tag Manager
Google hat den Google Tag Manager zur Verwaltung von Snippets gestartet. Über den Tag Manager können die Code-Snippets verschiedener Dienste (z.B. Analytics, AdWords, Snippets von Fremdanbietern etc.) für verschiedene Websites über eine Benutzeroberfläche verwaltet werden. Das spart Zeit und ermöglicht das Update der Code-Snippets ohne einen Webentwickler kontaktieren zu müssen.
Tag Manager einbinden
Der Tag Manager wird über ein globales Snippet einmalig in die Website integriert. Anschließend kann innerhalb des Dienstes das gewünschte Snippet ausgewählt und in die Website integriert werden. Dabei bietet Google verschiedene Einstellungsmöglichkeiten je Snippet an.
Die Abfrage ob ein Benutzer bei WordPress eingeloggt ist, kann für das Analytics-Snippet erwartungsgemäß nicht definiert werden. Würden wir den Code des neuen Tag Managers also so einsetzen, wie wir es oben mit dem Analytics Snippet getan haben, würden wir alle über den Tag Manager verwaltete Snippets deaktivieren. Was also tun?
Theoretische Lösung (ungeprüft!)
Innerhalb des Tag Managers kann ein „custom HTML Snippet“ ausgewählt werden. Hier könnt ihr einen beliebigen HTML- oder JavaScript-Code eingeben. Ob über dieses Element die oben beschriebene Funktion wiederhergestellt werden kann ist mir allerdings aktuell nicht bekannt. Habt ihr dazu bereits Erfahrungen gesammelt?
Bzgl. dem Einbinden des Tracking Codes:
Ich setze immer auf current_user_can Abfrage um Administratoren nicht zu tracken. Also statt
!is_user_logged_in()
einfach
!current_user_can(‚update_core‘);
Speziell für Websites wo User sich einloggen können sehr hilfreich.
MFG