Jak działa analytics.js

Kolejka poleceń ga() pozwala na niemal wszystko, co potrzebne do pomiarów za pomocą biblioteki analytics.js. Z tego przewodnika dowiesz się, czym jest kolejka poleceń, jak działa i jak wykonywać polecenia służące do pomiaru interakcji użytkowników.

Kolejka poleceń ga

Tag Google Analytics definiuje globalną funkcję ga znaną jako „kolejka poleceń”. Jest to tzw. kolejka poleceń, ponieważ zamiast wykonywania natychmiast wysyłanych poleceń zostaje dodana do kolejki, która opóźnia wykonanie zadania do chwili pełnego wczytania biblioteki analytics.js.

W języku JavaScript funkcje są również obiektami, co oznacza, że mogą zawierać właściwości. Tag Google Analytics definiuje właściwość q w obiekcie funkcji ga jako pustą tablicę. Przed wczytaniem biblioteki analytics.js wywołanie funkcji ga() powoduje dołączenie listy argumentów przekazanych do funkcji ga() na końcu tablicy q.

Jeśli np. uruchomisz tag Google Analytics, a następnie od razu zarejestrujesz w konsoli zawartość ga.q, zobaczysz tablicę o długości dwóch elementów, która będzie zawierać dwa zestawy argumentów przekazane już do funkcji ga():

console.log(ga.q);

// Outputs the following:
// [
//   ['create', 'UA-XXXXX-Y', 'auto'],
//   ['send', 'pageview']
// ]

Po wczytaniu biblioteki analytics.js sprawdza ona zawartość tablicy ga.q i wykonuje kolejno każde polecenie. Po tym czasie funkcja ga() zostaje ponownie zdefiniowana, więc wszystkie kolejne wywołania są wykonywane natychmiast.

Ten wzorzec pozwala programistom korzystać z kolejki poleceń ga() bez obaw o to, czy biblioteka analytics.js została wczytana. Ma prosty, synchroniczny interfejs, który pozbywa się większości złożoności asynchronicznego kodu.

Dodawanie poleceń do kolejki

Wszystkie wywołania kolejki poleceń ga() mają wspólny podpis. Pierwszy parametr, „command”, to ciąg znaków identyfikujący konkretną metodę analytics.js. Wszelkie dodatkowe parametry to argumenty przekazywane do tej metody.

Metoda, do której odnosi się dane polecenie, może być metodą globalną, np. create, metodą w obiekcie ga, albo metodą instancji w obiekcie śledzenia, np. send. Jeśli kolejka poleceń ga() otrzyma nierozpoznane polecenie, ignoruje je, dzięki czemu wywołania funkcji ga() są bardzo bezpieczne, ponieważ prawie nigdy nie powodują błędów.

Pełną listę wszystkich poleceń, które można wykonywać za pomocą kolejki poleceń, znajdziesz w dokumentacji kolejki poleceń ga().

Parametry polecenia

Większość poleceń analytics.js (i odpowiadające im metody) akceptuje parametry w wielu różnych formatach. Ma to na celu ułatwienie przekazywania często używanych pól do określonych metod.

Przyjrzyjmy się na przykład 2 polecaniom w tagu Google Analytics:

ga('create', 'UA-XXXXX-Y', 'auto');
ga('send', 'pageview');

W pierwszym poleceniu create akceptuje pola trackingId, cookieDomain i name, aby opcjonalnie można było je określić jako drugi, trzeci i czwarty parametr. Polecenie send akceptuje opcjonalny parametr hitType.

Wszystkie polecenia akceptują końcowy parametr fieldsObject, którego można użyć do określenia dowolnych pól. Na przykład dwa powyższe polecenia w tagu można napisać ponownie w takiej postaci:

ga('create', {
  trackingId: 'UA-XXXXX-Y',
  cookieDomain: 'auto'
});
ga('send', {
  hitType: 'pageview'
});

Pełną listę opcjonalnych parametrów dozwolonych w poszczególnych poleceniach znajdziesz w dokumentacji kolejki poleceń ga().

Dalsze kroki

Z tego przewodnika dowiesz się, jak wykonywać polecenia za pomocą biblioteki analytics.js oraz jak działa kolejka poleceń. W następnym przewodniku omówimy tworzenie obiektów śledzących.