Questo documento fornisce una panoramica della libreria di raccolta dati di analytics.js.
frammento JavaScript
Per abilitare Google Analytics sul tuo sito web, è necessario aggiungere un frammento JavaScript prima dell’etichetta </head>
Chiusura pagina. Questa è una parte del frammento:
(function(i,s,o,g,r,a,m){i=r;i=i||function(){(i.q=i.q||).push(arguments)},i.l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o);a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
Quando il frammento viene eseguito, prima crea una nuova funzione globale chiamata ga
. Successivamente, il frammento carica asincrono la libreria Analytics.js sulla pagina.
La funzione globale è la modalità principale di interagire con la libreria di Analytics .js La funzione accetta una sequenza di parametri, in cui il primo rappresenta un comando di Google Analytics. Ad esempio, nel frammento predefinito:
ga('create', 'UA-XXXX-Y', 'auto'); // Creates a tracker.ga('send', 'pageview'); // Sends a pageview.
La prima riga chiama il comando create
e, il secondo, send
.
Sebbene il codice JavaScript carichi la libreria Analytics.js in modo asincrono, il è stato progettato per essere progettato per essere usato prima che la biblioteca sia caricata. Quando inizi a eseguire i comandi per la prima volta, ognuno è aggiunto a una coda. Quando la libreria finisce il caricamento, tutti i comandi della coda e i nuovi comandi vengono eseguiti immediatamente. In questo modo, i programmatori possono ignorare la natura asincrona di Google Analytics e concentrarsi sull’uso della funzione .
cambia il nome dell’oggetto globale
In alcuni casi, è possibile che un oggetto nella pagina stia già utilizzando il nome della variabile . Per evitare che l’oggetto venga annullato, è possibile modificare il nome della funzione , ad esempio, a __gaTracker
. Per questo, devi solo sostituire il nel frammento precedente:
(function(i,s,o,g,r,a,m){i=r;i=i||function(){(i.q=i.q||).push(arguments)},i.l=1*new Date();a=s.createElement(o),m=s.getElementsByTagName(o);a.async=1;a.src=g;m.parentNode.insertBefore(a,m)})(window,document,'script','//www.google-analytics.com/analytics.js','__gaTracker');
Dopo, puoi Utilizzare __gaTracker
invece di per chiamare i comandi:
__gaTracker('create', 'UA-XXXX-Y', 'auto');__gaTracker('send', 'pageview');
Riferimento frammento JavaScript
Nel seguente riferimento, viene visualizzato il frammento JavaScript di base, a cui sono stati aggiunti commenti e spazi vuoti:
<!-- Google Analytics --><script>/** * Creates a temporary global ga object and loads analy tics.js. * Paramenters o, a, and m are all used internally. They could have been declared using 'var', * instead they are declared as parameters to save 4 bytes ('var '). * * @param {Window} i The global context object. * @param {Document} s The DOM document object. * @param {string} o Must be 'script'. * @param {string} g URL of the analytics.js script. Inherits protocol from page. * @param {string} r Global name of analytics object. Defaults to 'ga'. * @param {DOMElement?} a Async script tag. * @param {DOMElement?} m First script tag in document. */(function(i, s, o, g, r, a, m){ i = r; // Acts as a pointer to support renaming. // Creates an initial ga() function. The queued commands will be executed once analytics.js loads. i = i || function() { (i.q = i.q || ).push(arguments) }, // Sets the time (as an integer) this tag was executed. Used for timing hits. i.l = 1 * new Date(); // Insert the script tag asynchronously. Inserts above current tag to prevent blocking in // addition to using the async attribute. a = s.createElement(o), m = s.getElementsByTagName(o); a.async = 1; a.src = g; m.parentNode.insertBefore(a, m)})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');ga('create', 'UA-XXXX-Y', 'auto'); // Creates the tracker with default parameters.ga('send', 'pageview'); // Sends a pageview hit.</script><!-- End Google Analytics -->
H3> frammento asincrono alternativo
Sebbene il frammento di analisi canonico.JS descritto sopra garantisce che lo script verrà addebitato ed eseguito in modo asincrono in tutti i browser, ha lo svantaggio di non consentire ai browser moderni di creare un carico precedente dello script .
Il seguente frammento alternativo aggiunge compatibilità del carico precedente, che fornisce un piccolo impulso performance nei browser moderni, ma Può essere deteriorato nel carico ed esecuzione sincrono in IE9 e nei browser per i precedenti dispositivi mobili, che non riconoscono l’attributo async
. Ti consigliamo di utilizzare questo frammento se i tuoi visitatori utilizzano principalmente i moderni browser per accedere al tuo sito.
<!-- Google Analytics --><script async src='//www.google-analytics.com/analytics.js'></script><script>window.ga=window.ga||function(){(ga.q=ga.q||).push(arguments)};ga.l=+new Date;ga('create', 'UA-XXXX-Y', 'auto');ga('send', 'pageview');</script><!-- End Google Analytics -->
Creare oggetti di tracciamento
per inviare dati A Google Analytics, è necessario creare un oggetto di follow-up. Ciascuno di questi oggetti può inviare dati a una singola proprietà Web di Google Analytics. Per creare un oggetto di tracciamento, il frammento predefinito utilizza il seguente codice:
ga('create', 'UA-XXXX-Y', 'auto');
dove il primo parametro della funzione è il comando create
e il secondo è l’ID della proprietà Web a cui verranno inviati i dati.
Personalizza oggetti di tracciamento
La personalizzazione dell’oggetto di tracciamento deve essere eseguita quando viene inizialmente creata, passando alla funzione un oggetto di configurazione come ultimo parametro. Ad esempio, per annullare alcune delle opzioni di configurazione dei cookie, viene utilizzato:
ga('create', 'UA-12345-6', { 'cookieDomain': 'foo.example.com', 'cookieName': 'myNewName', 'cookieExpires': 20000});
Nell’esempio precedente, dominio, nome e scadenza del cookie del tempo sono stati modificati Utilizzo dell’oggetto di configurazione opzionale.
Controllare la sezione Solo la sezione del campo Creazione del campo di comando del documento per ottenere informazioni complete su tutti i campi che possono essere configurati nel comando Creazione.
Test su localhost
In alcuni casi, è possibile provare Analytics.js da un server Web che viene eseguito su localhost
. Per configurare i cookie di analisi.JS, è necessario disabilitare il dominio dei cookie predefinito da:
ga('create', 'UA-XXXX-Y', { 'cookieDomain': 'none'});
Invia dati
Una volta che un oggetto di tracciamento è stato creato e associato Con una proprietà Web, è possibile utilizzare il comando send
per inviare dati a quella proprietà Web. I dati inviati a Google Analytics verranno definiti hit
e la libreria Analytics.js consente di inviare vari tipi di dati specificando un tipo di colpo (hitType). Quando si utilizza il comando send
, è necessario anche specificare il valore di dei dati che si desidera inviare.
Ad esempio, per inviare un video virgola Vista, è usato:
ga('send', 'pageview');
In questo modo, i dati vengono inviati per l’URL predefinito a Google Analytics.
Campo Nome oggetto
In alcuni casi, è possibile annullare diversi valori inviati come vista sulla pagina. La libreria Analytics.js consente di inviare un oggetto nome campo come ultimo parametro del comando send
. Questo è utile poiché ti consente di impostare molte proprietà aggiuntive della pagina, ad esempio, il suo titolo:
ga('send', 'pageview', { 'page': '/my-new-page', 'title': 'My New Page Title'});
Controllare il riferimento del campo dei campi da ottenere Informazioni complete su tutti i modi in cui è possibile configurare un oggetto di tracciamento.
Configurare il callback del colpo
In alcuni casi, ad esempio, quando si traccia i collegamenti di uscita, puoi sapere quando l’oggetto di tracciamento di inviare i dati è finito. In questo modo, puoi inviare un utente a destinazione solo dopo che il tuo clic ha comunicato a Google Analytics. Per risolvere questa situazione, il comando send
consente di specificare una funzione hitCallback
nell’oggetto nome campo che verrà eseguito come Analytics. JS ha finito di inviare i dati. Successivamente, ti mostriamo come configurare la funzione hitCallback
:
ga('send', 'pageview', { 'page': '/my-new-page', 'hitCallback': function() { alert('analytics.js done sending data'); }});
In questo esempio, l’oggetto del campo Nome Impostare il parametro page
e funzione hitCallback
. Dopo aver terminato l’oggetto di tracciamento inviare i dati, verrà visualizzata una casella di allerta all’utente.
Configurare i parametri in più comandi inviare
In alcuni casi, è consigliato impostare a Parametro e che il valore viene mantenuto in più comandi send
. Ad esempio, se si dispone di una pagina Web che si desidera tracciare una vista sulla pagina e due eventi. Se desideri cancellare il percorso di ciascun colpo per uno, è possibile impostare il nuovo percorso in ciascun comando send
o utilizzare il metodo set
Come segue:
ga('set', 'page', '/my-custom-page');ga('send', 'pageview');ga('send', 'event', 'image1', 'clicked');ga('send', 'event', 'image2', 'clicked');
Quando questo codice viene eseguito, la pagina sostitutiva /my-custom-page
verrà inviata a tutti e tre Invia comandi.
Invia colpi di utilizzoBeacon
Per inviare hit con navigator.sendBeacon
, configurare il parametro useBeacon
come true
. Il metodo garantisce che i dati vengano trasmessi anche se l’utente lascia la pagina o chiude il browser prima che la richiesta sia stata completata. Questo è molto utile nei casi in cui si desidera tenere traccia di un evento prima che un utente esca dal tuo sito, senza ritardare la navigazione.
ga('send', 'event', 'click', 'download-me', {useBeacon: true});
Funzioni di trasmissione
A volte, il codice viene eseguito solo dopo che è stata caricata la libreria Analytics.js. Per fare ciò, è possibile inviare una funzione come un parametro a .
ga(function() { alert('library done loading');});
Al termine del caricamento La biblioteca, l’utente vedrà una casella di avviso.
Ottieni parametri
Con Analytics.js, è possibile ripristinare uno qualsiasi dei valori che sono stati configurati nell’oggetto di tracciamento da parte di Mezzi del comando get
. Poiché l’oggetto di tracciamento viene creato solo quando la libreria è stata caricata, è necessario ottenere parametri da una funzione inviata.
ga(function(tracker) { var defaultPage = tracker.get('page');});
In questo esempio, la funzione USA a Parametro denominato tracker
. Quando il carico della libreria finisce, la funzione viene eseguita e il valore di tracker
sarà l’oggetto di tracciamento predefinito che è stato creato come risultato del primo comando create
. Quindi, l’oggetto tracker
viene utilizzato per ottenere il valore della pagina predefinito.
Applica SSL (https)
“per impostazione predefinita, Google Analytics sarà regolato nel protocollo della pagina host quando si invia le richieste di uscita.Per forzare Google Analytics invia sempre dati tramite SSL, anche da pagine non protette (http), configurare il campo Foreencesl come true
:
ga('create', 'UA-XXXX-Y', 'auto');ga('set', 'forceSSL', true); // Send all data using SSL, even from insecure (HTTP) pages.ga('send', 'pageview');
Lavora con diversi oggetti di tracciamento
In alcuni casi è consigliabile inviare i dati a diverse proprietà Web da una singola pagina. Questo è utile per i siti che hanno diversi proprietari che supervisionano alcune sezioni di un sito; Ogni proprietario poteva vedere la sua proprietà web.
Per risolvere questo problema, è necessario creare un oggetto di follow-up per ogni proprietà Web che si desidera inviare dati:
ga('create', 'UA-XXXX-Y', 'auto');ga('create', 'UA-12345-6', 'auto', {'name': 'newTracker'}); // New tracker.
Quando si esegue, verranno creati due oggetti di tracciamento. Il primo sarà il valore predefinito e non avrà un nome. Il secondo verrà chiamato newTracker
.
Per inviare una vista sulla pagina con entrambi gli oggetti di tracciamento, è necessario impostare il nome dell’oggetto di tracciamento al comando, seguito da un punto. Ad esempio:
ga('send', 'pageview');ga('newTracker.send', 'pageview'); // Send page view for new tracker.
Una pagina di visualizzazione verrà inviata sia all’oggetto di tracciamento predefinito che all’olo nuovo.
per accedere al tracciamento Oggetto per nome da una funzione, utilizzare il metodo :
ga(function() { var newTracker = ga.getByName('newTracker');});
per ottenere una matrice di tutti gli oggetti di Tracciamento che è stato configurato, utilizzare il metodo getAll
:
ga(function() { var allTrackers = ga.getAll();});
Assegnazione del collegamento migliorata
Con l’attribuzione del collegamento migliorata, l’accuratezza del rapporto analitico è aumentata dalla differenziazione automatica di diversi collegamenti allo stesso URL a una singola pagina con gli ID elementi di collegamento.
per abilitare l’attribuzione del collegamento migliorato:
- consente l’attribuzione del collegamento avanzata nell’interfaccia utente dell’amministrazione dell’account di Google Analytics.
- Aggiorna il codice da ciascuna pagina per caricare il plug-in di attribuzione del collegamento migliorato, Come mostrato in questo esempio:
ga('create', 'UA-XXXX-Y', 'auto');ga('require', 'linkid'); // Load the plug-in. Note: this call will block until the plug-in is loaded.ga('send', 'pageview');
Personalizza l’attribuzione del collegamento migliorata
il plugin di attribuzione del collegamento Migliore distingue tra i collegamenti a Lo stesso URL usando gli ID elementi di un collegamento o un elemento principale, così come un cookie. Puoi personalizzare fino a che punto cercherai il plugin nel DOM un ID elemento, così come il comportamento di questo cookie, fornendo le opzioni di configurazione quando carichi il caricamento del plugin:
ga('create', 'UA-XXXX-Y', 'auto');ga('require', 'linkid', { 'cookieName': '_ela', // Cookie name. _gali by default. 'duration': 45, // Cookie duration. 30 seconds by default. 'levels': 5}); // Max DOM levels from link to look for element ID. 3 by default.ga('send', 'pageview');
Converti IPS in Anonymous
In alcuni casi, potrebbe essere necessario diventare un indirizzo IP anonimo del colpo (richiesta HTTP) che viene inviata a Google Analytics. È possibile convertire in indirizzi IP anonimi di tutti i successi inviati da una pagina (la durata dell’oggetto di tracciamento) utilizzando il comando set
e impostazioni del campo come true
:
ga('set', 'anonymizeIp', true);
Per convertire l’indirizzo IP di un colpo individuale anonimo, è possibile configurare nell’oggetto di configurazione opzionale di detto colpo:
ga('send', 'pageview', { 'anonymizeIp': true});
Per ulteriori informazioni sul funzionamento del funzionamento del Conversione IP in anonima, vedere l’articolo convertire IPS in Anonymous in Google Analytics presso il Centro assistenza.
Disqualificazione utente
In alcuni casi, è necessario disabilitare Google Analytics Tracciamento del codice su una pagina senza dover eliminare il frammento JavaScript. Ad esempio, è possibile farlo se l’informativa sulla privacy del tuo sito include la possibilità che un utente disabilita il monitoraggio di Google Analytics.
La libreria Analytics.js include una finestra della finestra che, quando configurata come true
, disabilita l’invio di dati Analytics.js a Google Analytics. Quando Google Analytics tenta di configurare un cookie o restituire i dati su Google Analytics Server, verificare se questa proprietà è stata configurata come true
. In tal caso, avrà lo stesso effetto di quando l’utente ha installato il plug-in disattivazione dei browser di Google Analytics.
Per disabilitare il tracciamento, configurare la seguente proprietà della finestra come true
:
window = true;
dove il valore UA-XXXX-Y
corrisponde all’ID della proprietà Web in cui si desidera Disable Tracking .
Questa proprietà della finestra deve essere configurata prima di chiamare il codice di tracciamento. Questa proprietà deve essere configurata su ogni pagina in cui si desidera disabilitare il monitoraggio di Google Analytics. Se la proprietà non è configurata o è stata configurata come falsa, il tracciamento funzionerà nel solito modo.
Esempio
Avanti, è visualizzato un semplice esempio del codice che è possibile utilizzare per offrire agli utenti la funzionalità di disabilitazione.
Innanzitutto, aggiunge un nuovo collegamento HTML al sito per eseguire la logica disabilitante:
<a href="javascript:gaOptout()">Click here to opt-out of Google Analytics</a>
quindi aggiungere il seguente frammento di codice prima del frammento del codice Analytics.js. Non dimenticare di sostituire il valore di gaProperty
dalla proprietà utilizzata sul sito. È lo stesso valore che viene passato al comando create
.
Quando un utente fa clic sul collegamento Disabilitazione HTML, la funzione . Un cookie sarà configurato con una durata lunga e la raccolta di dati Analytics.js sarà disabilitata. Quando un utente ritorna a questo sito, con lo script precedente verrà controllato se il cookie di squalifica è stato configurato. Se sì, la raccolta dati Analytics.js sarà disabilitata anche.
Debug
È possibile abilitare la versione di debug di tramite analytics_debug.js
:
deve essere utilizzato solo temporaneamente o durante lo sviluppo, dal momento che analytics_debug.js
è più grande e ritarda i risultati a Google-analytics.com.
Debug di follow-up
Con il debug, le informazioni più dettagliate verranno inviate alla console. Per abilitare questo tipo di debug, utilizzare https://www.google-analytics.com/analytics_debug.js
e questa linea di codice prima del frammento:
window.ga_debug = {trace: true};