Fast alles, was Sie mit analytics.js messen müssen, kann mit der ga()
-Befehlswarteschlange erledigt werden. In diesem Leitfaden wird erläutert, was die Befehlswarteschlange ist, wie sie funktioniert und wie Sie Befehle zum Messen von Nutzerinteraktionen ausführen.
Die Befehlswarteschlange ga
Mit dem Google Analytics-Tag wird eine globale ga
-Funktion definiert, die als „Befehlswarteschlange“ bezeichnet wird. Sie wird als Befehlswarteschlange bezeichnet, weil sie nicht sofort ausgeführt wird, sondern einer Warteschlange hinzugefügt wird. Dadurch wird die Ausführung verzögert, bis die analytics.js-Bibliothek vollständig geladen ist.
In JavaScript sind Funktionen auch Objekte und können Eigenschaften enthalten. Das Google Analytics-Tag definiert eine q
-Property für das ga
-Funktionsobjekt als leeres Array. Bevor die analytics.js-Bibliothek geladen wird, wird beim Aufrufen der Funktion ga()
eine Liste der Argumente, die an die Funktion ga()
übergeben werden, an das Ende des Arrays q
angehängt.
Wenn Sie beispielsweise das Google Analytics-Tag ausführen und dann den Inhalt von ga.q
sofort in der Konsole protokollieren, sehen Sie ein Array mit zwei Elementen, das die beiden an die Funktion ga()
übergebenen Argumente enthält:
console.log(ga.q);
// Outputs the following:
// [
// ['create', 'UA-XXXXX-Y', 'auto'],
// ['send', 'pageview']
// ]
Sobald die analytics.js-Bibliothek geladen wurde, prüft sie den Inhalt des Arrays ga.q
und führt jeden Befehl der Reihe nach aus. Danach wird die Funktion ga()
neu definiert, sodass alle nachfolgenden Aufrufe sofort ausgeführt werden.
Mit diesem Muster können Entwickler die Befehlswarteschlange ga()
verwenden, ohne sich Sorgen machen zu müssen, ob das Laden der analytics.js-Bibliothek abgeschlossen ist. Es bietet eine einfache, synchron wirkende Schnittstelle, die den Großteil der Komplexität von asynchronem Code abstrahiert.
Befehle zur Warteschlange hinzufügen
Alle Aufrufe der ga()
-Befehlswarteschlange haben eine gemeinsame Signatur. Der erste Parameter, der "command", ist ein String zur Identifizierung einer bestimmten analytics.js-Methode. Alle zusätzlichen Parameter sind die Argumente, die an diese Methode übergeben werden.
Die Methode, auf die sich ein bestimmter Befehl bezieht, kann eine globale Methode wie create
oder eine Methode für das ga
-Objekt oder eine Instanzmethode für ein Tracker-Objekt wie send
sein. Wenn die ga()
-Befehlswarteschlange einen Befehl empfängt, den sie nicht erkennt, wird er einfach ignoriert. Dadurch werden Aufrufe der ga()
-Funktion sehr sicher, da sie fast nie zu einem Fehler führen.
Eine umfassende Liste aller Befehle, die über die Befehlswarteschlange ausgeführt werden können, finden Sie in der Referenz zur Befehlswarteschlange ga()
.
Befehlsparameter
Die meisten analytics.js-Befehle und die zugehörigen Methoden akzeptieren Parameter in verschiedenen Formaten. Dies soll den Nutzern die Möglichkeit geben, häufig verwendete Felder an bestimmte Methoden zu übergeben.
Sehen Sie sich als Beispiel die beiden Befehle im Google Analytics-Tag an:
ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');
Im ersten Befehl akzeptiert create
die Felder trackingId
, cookieDomain
und name
und kann optional als zweiter, dritter und vierter Parameter angegeben werden. Für den Befehl send
ist ein optionaler zweiter Parameter hitType
zulässig.
Alle Befehle akzeptieren einen endgültigen fieldsObject
-Parameter, mit dem auch beliebige Felder angegeben werden können. Die beiden obigen Befehle im Tag könnten beispielsweise so umgeschrieben werden:
ga('create', {
trackingId: 'UA-XXXXX-Y',
cookieDomain: 'auto'
});
ga('send', {
hitType: 'pageview'
});
Eine vollständige Liste der optionalen Parameter für die einzelnen Befehle finden Sie in der Referenz zur Befehlswarteschlange ga()
.
Nächste Schritte
Nachdem Sie diesen Leitfaden gelesen haben, sollten Sie wissen, wie Befehle mit analytics.js ausgeführt werden und wie die Befehlswarteschlange funktioniert. Im nächsten Leitfaden wird das Erstellen von Tracker-Objekten beschrieben.