Wordpress Kategorien in benutzerdefinierte Variablen von Google Analytics tracken

Seit einiger Zeit gibt es die Möglichkeit in Google Analytics benutzerdefinierte Variablen zu definieren und zu tracken. Diese eignen sich dazu jede Art von Daten zu erfassen, die nicht unbedingt zum Standard-Set von Webanalytics-Tools gehören. In Online-Shops kann man so z.B. sehr gut Produktbewertungen oder individuelle Produkteigenschaften erfassen. Eine genauer Beschreibung der Syntax findet sich in der Google Analytics Hilfe.

Für Betreiber von Wordpress-Blogs eignen sich die benutzerdefinierten Variablen z.B. um die Zugriffe auf die einzelnen Kategorien zu tracken. Jeder Artikel wird normalerweise einer oder mehrere Kategorien zugeordnet. Erfasst man bei jedem Artikelaufruf mit, aus welcher Kategorie der Beitrag ist, so bekommt man eine sehr schöne Übersicht über die beliebtesten Kategorien. Ich habe das mal exemplarisch auf meinem Blog neunzehn72.de implementiert. Die Umsetzung ist ganz einfach.

Die Kategorie auslesen und in einer Variablen merken

Zunächst lese ich die Kategorie des aufgerufenen Artikels aus und schreibe diese in eine Variable. Dazu habe ich folgenden Code in die Theme-Datei single.php gepackt.

<?php
   global $myCategory;
   $myCategory = get_the_category();
?>

Damit befindet sich nun in der globalen Variable $myCategory ein Array mit allen Kategorien in denen sich der Artikel befindet. Ein Artikel kann natürlich in mehr als einer Kategorie sein. Der Einfachheit halber erfasse ich jedoch in diesem Beispiel nur die erste Kategorie, zumal ich normalerweise auch nur eine Kategorie pro Artikel vergebe.

Die Kategorie als benutzerdefinierte Variable in Google Analytics tracken

Nun muss diese Variable nur noch in den Trackingcode von Google Analytics eingefügt werden. Das passiert in der Theme-Datei footer.php wo sich auch der restliche Google Analytics-Code befindet.

pageTracker._setCustomVar(
   1,
   "Kategorie",
   "<?php echo(empty($myCategory[0]->cat_name)?
          "Nicht zugeordnet":($myCategory[0]->cat_name)); ?>",
   3
);

Man verwendet für die benutzerdefinierten Variablen die _setCustomVar-Funktion, welche 4 Parameter hat.

Der erste ist der Slot. Man hat insgesamt 5 Slots für eigene Variablen zur Verfügung. Ich habe hier Slot 1 gewählt.

Der zweite Parameter ist die Bezeichnung der Variable. In diesem Fall “Kategorie” für die Wordpress-Kategorie.

Dritter Parameter ist der eigentliche Wert. Hier frage ich über PHP ab ob sich etwas in der Variable $myCategory befindet und wenn ja, dann übergebe ich den ersten Wert des Arrays an die Funktion. Ist $myCategory leer, so schreibe ich “Nicht zugeordnet” rein. Das ist z.B. bei der Homepage der Fall. An dieser Stelle kann man die Funktion natürlich noch weiter aufbohren und bei Bedarf in einer Schleife alle Kategorien übergeben, falls man mehrere für einen Artikel verwendet.

Der vierte Parameter sagt auf welchem Level die Daten getrackt werden. 3 steht für PageLevel, also wird bei jedem Seitenaufruf erfasst. 2 wäre dagegen Session-Level und 1 Visitor-Level.

Das war es dann auch schon. Ab sofort werden die Kategorien als benutzerdefinierte Variable in Google Analytics erfasst, was dann im Reporting so aussieht:

Etwas Finetuning bedarf die Lösung noch, so werden z.B. Leer- und Sonderzeichen noch nicht richtig übergeben, was aber nicht schwer zu beheben sein dürfte.

Sicherlich kann man das auch eleganter über ein Plugin lösen, aber dazu reichen meine rudimentären Programmierkenntnisse dann doch nicht aus. Falls aber noch jemand Verbesserungsvorschläge hat, dann gerne her damit.

Diese Seite zu Mister Wong hinzufügen SEO News

4 Responses to “Wordpress Kategorien in benutzerdefinierte Variablen von Google Analytics tracken”

  1. [...] in eine benutzerdefinierte Variable tracken. Wie das geht habe ich mal auf meinem Web Analytics Blog beschrieben. Sehr praktisch um zu sehen welches die beliebtesten (und ungeliebten) Kategorien auf [...]

  2. [...] bin gerade zufällig auf den Blog von Patrick Ludolph gestoßen in dem er beschreibt wie man mit Hilfe von ein paar kleinen [...]

  3. [...] wurde, mass man es ihm sagen. Dazu verwende ich die gleiche Funktionalität wie für das Tracking der Kategorien über eine benutzerdefinierte Variable. Die in dem Beitrag beschriebene Funktion wird nur geringfügig [...]

  4. Sehr guter Tipp. Vielen Dank!

    Wenn die Datenschutz Aufsichtsbehörden zur Vernunft kommen und die Verwendung vollständiger IP-Adressen (und somit Tools wie Google Analytics) zur Auswertung wieder erlauben, werde ich es mal ausprobieren.