Pomiary aplikacji na jednej stronie

Z tego przewodnika dowiesz się, jak za pomocą tagu analytics.js mierzyć aktywność na stronach w witrynach, których zawartość jest wczytywana dynamicznie bez tradycyjnego wczytywania pełnego ekranu.

Przegląd

Aplikacja jednostronicowa (SPA) to aplikacja internetowa lub witryna, która przy pierwszym wczytaniu strony wczytuje wszystkie zasoby wymagane do poruszania się po witrynie. Gdy użytkownik klika linki i wchodzi w interakcję ze stroną, kolejne treści są wczytywane dynamicznie. Aplikacja często aktualizuje adres URL w pasku adresu, aby emulować tradycyjne poruszanie się po stronie, ale kolejne żądanie pełnej strony nigdy nie jest wysyłane.

Domyślny tag Google Analytics dobrze działa w przypadku tradycyjnych witryn, ponieważ fragment kodu jest uruchamiany przy każdym wczytaniu nowej strony przez użytkownika. W przypadku aplikacji składającej się z jednej strony, w której witryna wczytuje zawartość nowej strony dynamicznie, a nie całej strony, fragment kodu analytics.js uruchamia się tylko raz. Oznacza to, że kolejne (wirtualne) wyświetlenia strony muszą być rejestrowane ręcznie podczas wczytywania nowych treści.

Śledzenie wirtualnych odsłon

Kiedy aplikacja dynamicznie wczytuje zawartość i aktualizuje adres URL w pasku adresu, należy również zaktualizować dane przechowywane w trackerze.

Aby zaktualizować lokalizator, użyj polecenia set i podaj nową wartość page:

ga('set', 'page', '/new-page.html');

Po ustawieniu nowej wartości strony ta nowa wartość będzie wykorzystywana w kolejnych wysyłanych działaniach. Aby rejestrować odsłonę, wyślij działanie odsłony natychmiast po zaktualizowaniu modułu do śledzenia.

ga('set', 'page', '/new-page.html');
ga('send', 'pageview');

Z technicznego punktu widzenia polecenie send odnoszące się do działań odsłon strony przyjmuje jako trzeci parametr opcjonalne pole page, jednak podczas pomiaru aplikacji jednostronicowych nie zalecamy stosowania w ten sposób pola page. Dzieje się tak, ponieważ pola przekazane za pomocą polecenia send nie są ustawione w tagu śledzenia – mają zastosowanie tylko do bieżącego działania. Brak aktualizacji modułu do śledzenia spowoduje problemy, jeśli aplikacja wysyła działania niezwiązane z odsłoną strony (np. zdarzenia lub interakcje społecznościowe), ponieważ działania te będą powiązane z dowolną wartością page, jaką miał element śledzenia w momencie utworzenia.

Obsługa wielu adresów URL tego samego zasobu

Podczas dynamicznego wczytywania treści niektóre aplikacje jednorazowe aktualizują tylko fragment adresu URL zawierający skrót. Może to prowadzić do sytuacji, w których wiele różnych ścieżek do stron wskazuje ten sam zasób. W takich przypadkach najlepiej jest wybrać kanoniczny URL i wysyłać tylko wartość page do Google Analytics.

Weźmy za przykład witrynę, której stronę „O nas” można otworzyć pod dowolnym z tych adresów URL:

  • /about.html
  • /#about.html
  • /home.html#about.html

Aby uniknąć duplikowania raportów, najlepiej rejestrować wszystkie te odsłony jako /about.html.

Ważne informacje

Nie aktualizuj strony odsyłającej do dokumentu

Gdy utworzysz obiekt skryptu śledzenia za pomocą polecenia create, wartość document.referrer będzie przechowywana w jego polu referrer. W kontekście aplikacji składającej się z pojedynczej strony, która nie wykorzystuje pełnego wczytania strony, pole referrer zawsze pozostaje bez zmian.

Mimo to przed wysłaniem działań związanych z odsłoną strony nie trzeba ręcznie aktualizować pola strony odsyłającej. Google Analytics może automatycznie określić prawidłową ścieżkę nawigacji.

Nie aktualizuj lokalizacji dokumentu

Tak samo jak tag śledzenia korzysta z pola document.referrer w polu referrer, korzysta też z pola document.location w polu location. Może ono zawierać dane kampanii lub inne metadane w postaci parametrów zapytania dołączonego na końcu adresu URL.

Zaktualizowanie dowolnego pola kampanii lub innych metadanych, które są sprawdzane przez Google Analytics, może spowodować zakończenie bieżącej sesji i rozpoczęcie nowej. Aby uniknąć tego problemu, nie aktualizuj pola location podczas pomiaru wirtualnych odsłon w aplikacji jednostronicowej. Zamiast niego użyj pola page.

Nie twórz nowych trackerów

Nie twórz nowych skryptów śledzenia w aplikacji na jednej stronie, aby naśladować działanie fragmentu kodu śledzenia JavaScript w tradycyjnych witrynach. Może to wiązać się z ryzykiem wysłania nieprawidłowej strony odsyłającej, a także nieprawidłowych danych kampanii, jak opisano powyżej.