Zum Abrufen und Festlegen von Felddaten für einen Tracker ist manchmal ein Verweis auf das Tracker-Objekt selbst erforderlich. Da Befehle, die der ga()
-Befehlswarteschlange hinzugefügt wurden, asynchron ausgeführt werden und keinen Wert zurückgeben. Da Tracker meistens mit dem Befehl create
erstellt werden, erfordert das Abrufen eines Verweises auf ein Tracker-Objekt, bis der Befehl create
ausgeführt wurde. Das ist über den bereiten Callback möglich.
Bereiter Callback
Der bereite Callback ist eine Funktion, die Sie der Befehlswarteschlange ga()
hinzufügen können. Die Funktion wird aufgerufen, sobald die analytics.js-Bibliothek vollständig geladen ist und alle vorherigen Befehle, die der Warteschlange hinzugefügt wurden, ausgeführt wurden.
Da alle Befehle in der Warteschlange der Reihe nach ausgeführt werden, wird durch Hinzufügen eines Ready-Callbacks zur Warteschlange nach dem Hinzufügen eines create
-Befehls sichergestellt, dass der Ready-Callback nach dem Erstellen des Trackers ausgeführt wird. Wurde ein Standard-Tracker beim Aufruf eines Bereitschafts-Callbacks erstellt, wird dieser als erstes (und einziges) Argument des Callbacks übergeben.
Der folgende Code zeigt, wie du auf das Standard-Tracker-Objekt zugreifen und es in der Konsole protokollieren kannst:
ga('create', 'UA-XXXXX-Y', 'auto');
ga(function(tracker) {
// Logs the tracker created above to the console.
console.log(tracker);
});
Tracker über ga-Objektmethoden abrufen
Wenn du keinen Standard-Tracker verwendest oder es mehr als einen Tracker auf der Seite gibt, kannst du über eine der ga
-Objektmethoden auf diese Tracker zugreifen.
Sobald die analytics.js-Bibliothek vollständig geladen ist, werden dem ga
-Objekt selbst weitere Methoden hinzugefügt. Zwei dieser Methoden, getByName
und getAll
, werden verwendet, um auf Tracker-Objekte zuzugreifen.
GetByName
Wenn du den Namen des Trackers kennst, auf den du zugreifen möchtest, kannst du das mit der getByName
-Methode tun:
ga('create', 'UA-XXXXX-Y', 'auto', 'myTracker');
ga(function() {
// Logs the "myTracker" tracker object to the console.
console.log(ga.getByName('myTracker'));
});
getAll
Verwenden Sie die Methode getAll
, um ein Array aller erstellten Tracker abzurufen:
ga('create', 'UA-XXXXX-Y', 'auto', 'tracker1');
ga('create', 'UA-XXXXX-Z', 'auto', 'tracker2');
ga(function() {
// Logs an array of all tracker objects.
console.log(ga.getAll());
});
Daten auf einem Tracker speichern
Sobald Sie einen Verweis auf ein Tracker-Objekt haben, können Sie mit seiner get
-Methode auf den Wert eines beliebigen Felds zugreifen, das derzeit auf dem Tracker gespeichert ist.
ga('create', 'UA-XXXXX-Y', 'auto');
ga(function(tracker) {
// Logs the trackers name.
// (Note: default trackers are given the name "t0")
console.log(tracker.get('name'));
// Logs the client ID for the current user.
console.log(tracker.get('clientId'));
// Logs the URL of the referring site (if available).
console.log(tracker.get('referrer'));
});
Daten aktualisieren
Tracker-Objekte können mit der Methode set
aktualisiert werden. Die set
-Methode eines Trackers kann für ein Tracker-Objekt selbst oder durch Hinzufügen eines set
-Befehls zur ga()
-Befehlswarteschlange aufgerufen werden.
Da zum Abrufen eines Verweises auf ein Tracker-Objekt der Ready Callback erforderlich ist, empfehlen wir, den Tracker mit der Befehlswarteschlange ga()
zu aktualisieren.
Die Befehlswarteschlange ga()
Der Befehl set
kann auf zwei Arten aufgerufen werden: durch Übergabe von zwei Parametern, einem Feld und dem entsprechenden Wert, oder durch Übergeben eines Objekts aus Feld/Wert-Paaren.
Im folgenden Beispiel wird das Feld page
im Standard-Tracker auf '/about'
gesetzt:
ga('set', 'page', '/about');
In diesem Beispiel werden die Felder page
und title
gleichzeitig festgelegt:
ga('set', {
page: '/about',
title: 'About Us'
});
Benannten Tracker verwenden
Wenn Sie einen benannten Tracker anstelle des Standard-Trackers verwenden, können Sie seinen Namen im Befehlsstring übergeben.
Mit dem folgenden Aufruf wird das Feld page
für den Tracker "myTracker" festgelegt:
ga('myTracker.set', 'page', '/about');
Auf dem Tracker-Objekt selbst
Wenn du einen Verweis auf das Tracker-Objekt hast, kannst du die set
-Methode dieses Trackers direkt aufrufen:
ga(function(tracker) {
tracker.set('page', '/about');
});
Kaufmännische Syntax
Tracker-Felder werden normalerweise anhand ihrer Feldnamen abgerufen und festgelegt. In der Feldreferenz finden Sie eine vollständige Liste der analytics.js-Felder und ihrer Namen.
Alternativ können Sie Felder mit den entsprechenden Measurement Protocol-Parameternamen abrufen und festlegen.
Die beiden folgenden console.log
-Ausdrücke protokollieren beide den Dokumenttitel in der Konsole:
ga(function(tracker) {
// Gets the title using the analytics.js field name.
console.log(tracker.get('title'));
// Gets the title using the measurement protocol
// parameter name, prefixed with an ampersand.
console.log(tracker.get('&dt'));
});
Generell wird das kaufmännische Und-Zeichen nicht empfohlen und sollte nur verwendet werden, wenn der Feldname von analytics.js für einen Measurement Protocol-Parameter nicht vorhanden ist. Dies tritt gelegentlich auf, wenn dem Measurement Protocol eine neue Funktion hinzugefügt wird, bevor es in analytics.js implementiert wird.
Nächste Schritte
Nachdem Sie nun wissen, wie Sie Tracker erstellen und die darin gespeicherten Daten aktualisieren, sollten Sie als Nächstes lernen, wie Sie diese Daten zur Verarbeitung an Google Analytics senden.