Kod śledzenia: domeny i katalogi

W tym artykule opisujemy metody dostosowywania sposobu działania raportów Google Analytics w różnych domenach, na różnych hostach lub w podkatalogach witryny.

Metody domeny/katalogu GATC

Szczegóły metody

_cookiePathCopy()

_cookiePathCopy(newPath)

Zmienia ścieżki wszystkich plików cookie GATC na nowo określoną ścieżkę. Dzięki tej funkcji możesz śledzić zachowanie użytkowników w różnych strukturach katalogów w tej samej domenie.

Wywołanie tej funkcji natychmiast kopiuje wszystkie pliki cookie do nowej ścieżki plików cookie. Dlatego jeśli metoda _trackPageview() nie zostanie wywołana, podane zostaną wartości wszystkich istniejących plików cookie Analytics. Z tego powodu zalecamy wywoływanie tej metody po obiekcie _trackPageview() oraz innych metod konfiguracji, które mogą wpływać na wartości plików cookie lub wartości kampanii, które chcesz przekazać, np. _setCampaignCookieTimeout() lub _setReferrerOverride().

Fragment asynchroniczny (zalecany)
_gaq.push(['_cookiePathCopy', '/newSubDirectory/']);

Parametry

String   newPath Nowa ścieżka przechowywania plików cookie GATC pod.

_getLinkerUrl()

_getLinkerUrl(targetUrl, useHash)

Ta metoda działa w połączeniu z metodami _setDomainName() i _setAllowLinker(), by umożliwić śledzenie użytkowników w wielu domenach w przypadku elementów iframe i linków, które otwierają się w nowym oknie. Zwraca ona ciąg wszystkich danych z pliku cookie GATC z linku inicjującego, dołączając go do parametru URL. Możesz go potem przekazać do innej witryny lub elementu iframe.

Fragment asynchroniczny (zalecany)
  _gaq.push(function() {
    var pageTracker = _gat._getTrackerByName(); // Gets the default tracker.
    var linkerUrl = pageTracker._getLinkerUrl('http://www.my-example-iframecontent.com/');
  });

Parametry

String   targetUrl Adres URL witryny docelowej, do której mają być wysyłane wartości plików cookie.

Boolean   useHash Ustaw wartość „true” (prawda), aby przekazywać zmienne kodu śledzenia za pomocą # separatora tagów kotwicy zamiast domyślnego separatora? separatora ciągu zapytania.

returns

String Adres URL tagu łączącego.

_link(targetUrl, useHash)

Ta metoda działa w połączeniu z metodami _setDomainName() i _setAllowLinker(), by umożliwić śledzenie użytkowników w wielu domenach. Metoda _link() przekazuje pliki cookie GATC z tej witryny do innej, korzystając z parametrów adresu URL (HTTP GET). Zmienia się również wartość document.location i przekierowuje użytkownika na nowy adres URL.

Fragment asynchroniczny (zalecany)
<a href="http://example.com/test.html"
onclick="_gaq.push(['_link', 'http://example.com/test.html']); return false;">click me</a>

Parametry

String   targetUrl Adres URL witryny docelowej, do której mają być wysyłane wartości plików cookie.

Boolean   useHash Ustaw wartość „true” (prawda), aby przekazywać zmienne kodu śledzenia za pomocą # separatora tagów kotwicy zamiast domyślnego separatora? separatora ciągu zapytania.


_linkByPost()

_linkByPost(formObject, useHash)

Ta metoda działa w połączeniu z metodami _setDomainName() i _setAllowLinker(), by umożliwić śledzenie użytkowników w wielu domenach. Metoda _linkByPost() przekazuje pliki cookie GATC z formularza odsyłającego do innej witryny w ciągu znaków dołączanym do wartości działania formularza (HTTP POST). Ta metoda jest zwykle używana do śledzenia zachowania użytkowników, przechodząc z jednej witryny do witryny koszyka innej firmy, do wysyłania danych plików cookie do innych domen w wyskakujących okienkach lub elementach iframe.

Fragment asynchroniczny (zalecany)
    <form action="http://www.shoppingcartsite.com/myService/formProcessor.php"
    name="f" method="post" onsubmit="_gaq.push(['_linkByPost', this]);">
...
</form>

Dodatkowo, aby połączenie działało, parametr _setAllowLinker() musi być ustawiony na wartość true na stronie docelowej.

Parametry

HTMLFormElement   formObject Obiekt formularza maskujący żądanie POST.

Boolean   useHash Ustaw wartość „true” (prawda), aby przekazywać zmienne kodu śledzenia za pomocą # separatora tagów kotwicy zamiast domyślnego separatora? separatora ciągu zapytania.


_setAllowHash()

_setAllowHash(bool)

Ustawia flagę haszującą domeny. Domyślnie ta wartość jest ustawiona na true. Funkcja haszowania domen w Google Analytics tworzy wartość skrótu z Twojej domeny i używa tej liczby do sprawdzania integralności plików cookie użytkowników. Jeśli masz wiele subdomen, np. example1.example.com i example2.example.com, i chcesz śledzić zachowania użytkowników w obu z nich, wyłącz szyfrowanie domen, aby kontrola integralności plików cookie nie odrzucała plików cookie użytkowników pochodzących z jednej domeny do drugiej. Możesz też wyłączyć tę funkcję, aby zoptymalizować skuteczność śledzenia na poszczególnych stronach.

Parametry

Boolean   true lub falseWartość domyślna to true. Jeśli ten parametr ma wartość true, szyfrowanie domeny jest włączone. W przeciwnym razie szyfrowanie domeny jest wyłączone.

_setAllowLinker()

_setAllowLinker(bool)

Ustawia flagę funkcji tagu łączącego w ramach włączania śledzenia użytkowników w wielu domenach. Domyślna metoda ma wartość false, a łączenie jest wyłączone. Aby włączyć śledzenie w wielu domenach, zapoznaj się też z metodami _link(), _linkByPost() i _setDomainName(). W witrynie docelowej użyj metody _setAllowLinker, by witryna docelowa używała danych z plików cookie w parametrze adresu URL zamiast standardowej logiki sesji.

Fragment asynchroniczny (zalecany)
_gaq.push(['_setAllowLinker', true]); 

Parametry

Boolean  true lub false Wartość domyślna to false. Jeśli ten parametr ma wartość true, tag łączący jest włączony. W przeciwnym razie łączenie domen jest wyłączone.

_setCookiePath()

_setCookiePath(newCookiePath)

Służy do ustawiania nowej ścieżki pliku cookie w Twojej witrynie. Domyślnie Google Analytics ustawia ścieżkę plików cookie na poziomie głównym (/). W większości przypadków jest to odpowiednia opcja i działa poprawnie z kodem śledzenia instalowanym w witrynie, blogu lub w firmowym katalogu internetowym. Jednak w niektórych przypadkach, gdy dostęp użytkownika jest ograniczony tylko do podkatalogu domeny, ta metoda może rozwiązać problemy ze śledzeniem przez ustawienie podkatalogu jako domyślnej ścieżki dla wszystkich śledzenia.

Tego ustawienia warto użyć zazwyczaj wtedy, gdy dane nie są śledzone, a zasubskrybowano usługę bloga i masz dostęp tylko do określonego podkatalogu albo jeśli znajdujesz się w sieci firmowej lub uniwersyteckiej i masz dostęp tylko do swojego katalogu domowego.

Fragment asynchroniczny (zalecany)
_gaq.push(['_setCookiePath', '/myBlogDirectory']); 

Parametry

String   newCookiePath Nowa ścieżka pliku cookie do ustawienia.

_setDomainName()

_setDomainName(newDomainName)

Ustawia nazwę domeny dla plików cookie GATC. Ta metoda ma 3 tryby: ("auto" | "none" | [domain]). Domyślna metoda jest ustawiona na auto, co próbuje rozpoznać nazwę domeny na podstawie właściwości document.domain w DOM.

Określanie domeny

Wiele przykładów ilustrujących, kiedy i jak określić domenę za pomocą tej metody, znajdziesz w przewodniku po śledzeniu w wielu domenach. Poniższy przykład pokazuje, jak ustawić nazwę domeny na example.com:

Fragment asynchroniczny (zalecany)
_gaq.push(['_setDomainName', 'example.com']); 

Izolowanie domen najwyższego poziomu

Ustawienie tej metody na none zapewnia, że pliki cookie w danej domenie nie będą dostępne dla żadnych subdomen.

Fragment asynchroniczny (zalecany)
_gaq.push(['_setDomainName', 'none']); 

Parametry

String   newDomainName Nowa domyślna nazwa domeny do ustawienia.

_storeGac(bool)

Określa, czy plik cookie GAC powinien zostać utworzony. Domyślnie plik cookie GAC jest zapisywany przez skrypt i nie musisz nic robić, aby go zapisać. Możesz wyłączyć ustawienie tego pliku cookie, używając tego polecenia.

Fragment asynchroniczny (zalecany)
_gaq.push(['_storeGac', false]);