Este documento proporciona unha visión xeral da biblioteca de recollida de datos Analytics.JS.
Fragmento de JavaScript
Para habilitar Google Analytics no seu sitio web, ten que engadir un fragmento de JavaScript antes da etiqueta </head>
peche da páxina. Esta é unha parte do fragmento:
(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');
Cando se executa o fragmento, primeiro crea unha nova función global chamada ga
A continuación, o fragmento carga asíncrona a biblioteca de Analytics.JS na páxina.
A función global ga
é o principal modo de interactuar coa biblioteca de análises .js A función acepta unha secuencia de parámetros, onde o primeiro representa un comando de Google Analytics. Por exemplo, no fragmento predeterminado:
ga('create', 'UA-XXXX-Y', 'auto'); // Creates a tracker.ga('send', 'pageview'); // Sends a pageview.
A primeira liña chama ao comando
e, segundo,send
.
Aínda que o código JavaScript carga a biblioteca de análise.js asíncrona, o ga
foi deseñado para ser usado antes de cargar a biblioteca. Cando comeza a executar os comandos por primeira vez, cada un engádese a unha cola. Cando a biblioteca termina de cargar, todos os comandos de cola e os novos comandos son executados de inmediato. Deste xeito, os programadores poden ignorar a natureza asíncrona de Googletical e concentrarse no uso da función ga
.
Cambiar o nome do obxecto global
Nalgúns casos, é posible que un obxecto da páxina xa estea usando o nome da variable ga
. Para evitar que o obxecto sexa cancelado, pode cambiar o nome da función ga
, por exemplo, a __gaTracker
. Para iso, só tes que substituír o parámetro
no fragmento anterior:
(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');
Despois, pode use __gaTracker
no canto de ga
para chamar os comandos:
__gaTracker('create', 'UA-XXXX-Y', 'auto');__gaTracker('send', 'pageview');
Referencia de fragmento JavaScript
Na seguinte referencia, móstrase o fragmento básico de JavaScript, aos que se engadiron comentarios e espazos en branco:
<!-- 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 -->
Fragmento asíncrono alternativo
Aínda que o fragmento de Analytics.js canonical.js describiu anteriormente as garantías que o guión será acusado e executado de xeito asíncrono en todos os navegadores, ten a desvantaxe de non permitir que os navegadores modernos fagan unha carga previa do guión .
O seguinte fragmento alternativo engade a compatibilidade da carga anterior, que proporciona un pequeno pulso de rendemento nos navegadores modernos, pero Pódese deteriorar na carga e execución sincrónica en IE9 e en navegadores para dispositivos móbiles anteriores, que non recoñecen o atributo async
. Suxerimos que use este fragmento os seus visitantes utilizan principalmente os navegadores para acceder a súa web.
<!-- 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 -->
Crear obxectos
Para envío de datos Para Google Analytics, debes crear un obxecto de seguimento. Cada un destes obxectos pode enviar datos a unha única propiedade web de Google Analytics. Para crear un obxecto de rastreamento, o fragmento predeterminado usa o seguinte código:
ga('create', 'UA-XXXX-Y', 'auto');
onde o primeiro parámetro da función ga
é o comando
e o segundo é o ID da propiedade web á que se enviarán os datos.
Personalizar obxectos de seguimento
A personalización do obxecto de seguimento debe realizarse cando se crea inicialmente, pasando á función ga
un obxecto de configuración como o último parámetro. Por exemplo, para cancelar algunhas das opcións de configuración de cookies, úsase:
ga('create', 'UA-12345-6', { 'cookieDomain': 'foo.example.com', 'cookieName': 'myNewName', 'cookieExpires': 20000});
modificouse a caducidade do exemplo, o dominio, o nome e a expiración de cookies de tempo Usando o obxecto de configuración opcional.
Comprobe a sección Só da referencia de campo de comando Crear do documento para obter información completa sobre todos os campos que se poden configurar no comando Crear.
Probas en localhost
Nalgúns casos, pode probar Analytics.js desde un servidor web que se executa en localhost
. Para configurar as cookies de análises.JS, ten que desactivar o dominio de cookies por defecto por:
ga('create', 'UA-XXXX-Y', { 'cookieDomain': 'none'});
Enviar datos
Unha vez que se creou e asociase un obxecto de seguimento Cunha propiedade web, pode usar o comando send
para enviar datos a esa propiedade web. Os datos enviados a Google Analytics chamaranse hit
e a biblioteca de Analytics.JS permítelle enviar varios tipos de datos especificando un tipo de éxito (hitType
). Ao usar o comando
, tamén debe especificar o valor de dos datos que desexa enviar.
Por exemplo, para enviar un vídeo Hit Vista, úsase:
Deste xeito, os datos envíanse para a URL predeterminada a Google Analytics.
Obxecto de nome de campo
Nalgúns casos, pode cancelar varios valores que se envían como unha vista de páxina. A biblioteca de Analytics.js permítelle enviar un nome de nome de campo como o último parámetro do comando
. Isto é útil xa que permite que configure moitas propiedades adicionais da páxina, por exemplo, o seu título:
ga('send', 'pageview', { 'page': '/my-new-page', 'title': 'My New Page Title'});
Comprobe a referencia de campo dos campos para obter Información completa sobre todas as formas en que se pode configurar un obxecto de seguimento.
Configurar a devolución de chamada do hit
Nalgúns casos, por exemplo, ao rastrexar as ligazóns de saída, pode saber cando o obxecto de seguimento do envío dos datos rematou. Deste xeito, pode enviar un usuario ao seu destino só despois de que o seu clic comunicase a Google Analytics. Para resolver esta situación, o comando
permítelle especificar unha funciónhitCallback
no obxecto de campo de campo que será executado como analítica. JS rematou de enviar os datos. A continuación, amosámosvos como configurar a funciónhitCallback
:
ga('send', 'pageview', { 'page': '/my-new-page', 'hitCallback': function() { alert('analytics.js done sending data'); }});
Neste exemplo, o obxecto do campo Nome Configurar o parámetro page
e función hitCallback
. Despois de que o obxecto de seguimento acabou por enviar os datos, mostrarase unha caixa de alerta ao usuario.
Configurar os parámetros en varios comandos Enviar
Nalgúns casos, recoméndase establecer un Parámetro e que o valor mantense en varios comandos send
. Por exemplo, se ten unha páxina web que quere rastrexar unha vista de páxina e dous eventos. Se desexa cancelar o camiño de cada golpe por un, pode configurar a nova ruta en cada comando send
ou usar o método set
Como segue:
ga('set', 'page', '/my-custom-page');ga('send', 'pageview');ga('send', 'event', 'image1', 'clicked');ga('send', 'event', 'image2', 'clicked');
Cando se executa este código, enviarase a páxina substituída /my-custom-page
a todos os tres Enviar comandos.
Enviar hits UseBeacon
Para enviar éxitos con navigator.sendBeacon
configure o parámetro useBeacon
como true
. O método navigator.sendBeacon
garante que os datos se transmitan mesmo se o usuario deixa a súa páxina ou pecha o navegador antes de completar a solicitude. Isto é moi útil nos casos nos que desexa rastrexar un evento antes de que un usuario saia do seu sitio, sen atrasar a navegación.
ga('send', 'event', 'click', 'download-me', {useBeacon: true});
Funcións de transmisión
Ás veces, o código é executado só despois de que se cargou a biblioteca de analíticos. Para iso, pode enviar unha función como parámetro á función
.
ga(function() { alert('library done loading');});
cando remate de cargar A biblioteca, o usuario verá unha caixa de alerta.
Obter parámetros
con analíticas.js, pode recuperar calquera dos valores que foron configurados no obxecto de seguimento por medios do comando get
. Dado que o obxecto de seguimento só se crea cando a biblioteca foi cargada, ten que obter parámetros dunha función enviada.
ga(function(tracker) { var defaultPage = tracker.get('page');});
Neste exemplo, a función de EE. UU. A parámetro chamado tracker
. Cando a carga da biblioteca remata, a función execútase eo valor de tracker
será o obxecto de seguimento predeterminado que se creou como resultado do primeiro comando create
. Entón, o obxecto tracker
úsase para obter o valor da páxina predeterminada.
Aplicar SSL (HTTPS)
“Por defecto, Google Analytics axustarase ao protocolo da páxina do servidor ao enviar as solicitudes de saída.Para forzar a Google Analytics sempre enviar datos a través de SSL, mesmo a partir de páxinas non seguras (HTTP), configurar o campo ForenSl como true
:
ga('create', 'UA-XXXX-Y', 'auto');ga('set', 'forceSSL', true); // Send all data using SSL, even from insecure (HTTP) pages.ga('send', 'pageview');
Traballar con varios obxectos de seguimento
Nalgúns casos, é recomendable enviar os datos a varias propiedades web a partir dunha única páxina. Isto é útil para sitios que teñen varios propietarios que supervisan certas seccións dun sitio; Cada propietario podía ver a súa propiedade web.
Para resolver este problema, ten que crear un obxecto de seguimento para cada propiedade web que desexe enviar datos:
ga('create', 'UA-XXXX-Y', 'auto');ga('create', 'UA-12345-6', 'auto', {'name': 'newTracker'}); // New tracker.
Cando se execute, crearanse dous obxectos de seguimento. O primeiro será o valor predeterminado e non terá un nome. O segundo chamarase newTracker
.
Para enviar unha vista de páxina con obxectos de seguimento, debe configurar o nome do obxecto de seguimento ao comando, seguido por un punto. Por exemplo:
ga('send', 'pageview');ga('newTracker.send', 'pageview'); // Send page view for new tracker.
Unha páxina de visualización enviarase tanto ao obxecto de seguimento predeterminado como ao novo.
Para acceder ao seguimento obxecto por nome dunha función, use o método :
ga(function() { var newTracker = ga.getByName('newTracker');});
para obter unha matriz de todos os obxectos de Seguimento que se configurou, use o método getAll
:
ga(function() { var allTrackers = ga.getAll();});
asignación de ligazóns mellorada
Coa atribución de ligazón mellorada, a precisión do informe analítico aumenta a diferenciación automática de varios enlaces ao mesmo URL da páxina única coas ID de elemento de ligazón.
Para activar a atribución de ligazón mellorada:
- Habilita a atribución de ligazón mellorada na interface de usuario de Administración de Administración de contas de Google Analytics.
- actualizar o código de cada páxina para cargar o plugin de atribución de ligazón mellorado, Como se mostra neste exemplo:
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');
Personalizar a atribución de ligazón mellorada
O complemento de atribución de ligazón mellorou distinguir entre as ligazóns a O mesmo URL usando os ID de elementos dunha ligazón ou un elemento principal, así como unha cookie. Pode personalizar ata que punto que buscará o complemento no DOM un ID de elemento, así como o comportamento desta cookie, proporcionando as opcións de configuración ao cargar o complemento:
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');
Converter IPS en anónimo
Nalgúns casos, pode que teña que converterse en enderezo IP anónimo do éxito (solicitude HTTP) que se envía a Google Analytics. Pode converter en direccións IP anónimas de todos os accesos enviados desde unha páxina (a duración do obxecto de seguimento) usando o comando set
e configuración de campo :
ga('set', 'anonymizeIp', true);
Para converter a dirección IP dun individuo Hit Anonymous, pode configurar o campo
no obxecto de configuración opcional do devandito hit:
ga('send', 'pageview', { 'anonymizeIp': true});
Para obter máis información sobre o funcionamento do Conversión IP en Anonymous, vexa o artigo Converter IPS en Anonymous en Google Analytics no Centro de axuda.
Desqualificación do usuario
Nalgúns casos, pode que sexa necesario desactivar a Google Analytics Seguimento do código nunha páxina sen ter que borrar o fragmento de JavaScript. Por exemplo, pode facelo se a política de privacidade do seu sitio inclúe a posibilidade de que un usuario desactiva o seguimento de Google Analytics.
A biblioteca de Analytics.JS inclúe unha propiedade de fiestra que, cando está configurada como true
. Se é así, terá o mesmo efecto que o usuario instalou o complemento desactivante para os navegadores de Google Analytics.
para desactivar o seguimento, configurar a seguinte propiedade da xanela como true
:
window = true;
onde o valor UA-XXXX-Y
corresponde á identificación da propiedade web na que desexa desactivar o seguimento .
Esta propiedade da xanela debe configurarse antes de chamar ao código de seguimento. Esta propiedade debe configurarse en cada páxina onde desexa desactivar o seguimento de Google Analytics. Se a propiedade non está configurada ou foi configurada como falsa, o seguimento funcionará de xeito habitual.
exemplo
A continuación, un exemplo sinxelo do código que pode usar amósase para ofrecer aos usuarios a desactivación da funcionalidade.
Primeiro, engade unha nova ligazón HTML Para o sitio para executar a lóxica desactivación:
<a href="javascript:gaOptout()">Click here to opt-out of Google Analytics</a>
A continuación, engada o seguinte fragmento de código antes do fragmento de código de análise. Non esqueza substituír o valor UA-XXXX-Y
de gaProperty
pola propiedade empregada no sitio. É o mesmo valor que se pasa ao comando IV ID = “FA7BD39E31” “.
<script>// Set to the same value as the web property used on the sitevar gaProperty = 'UA-XXXX-Y';// Disable tracking if the opt-out cookie exists.var disableStr = 'ga-disable-' + gaProperty;if (document.cookie.indexOf(disableStr + '=true') > -1) { window = true;}// Opt-out functionfunction gaOptout() { document.cookie = disableStr + '=true; expires=Thu, 31 Dec 2099 23:59:59 UTC; path=/'; window = true;}</script>
Cando un usuario fai clic na ligazón Desactivación HTML, a función . Unha cookie estará configurada con unha longa duración e a colección de datos analíticos. Cando un usuario volve a este sitio, co script anterior verificarase se a cookie de descualificación foi configurada. Se si, a colección de datos de analítica.js tamén estará desactivada.
depuración
Pode habilitar a versión de depuración de a través de IV id = “b4895048ee” :
só se debe empregar temporalmente ou durante o desenvolvemento, xa que analytics_debug.js
é máis grande e atrasa os éxitos de Google-analytics.com.
Seguimento de depuración
Coa depuración, enviarase a consola máis detallada á consola. Para habilitar este tipo de depuración, use https://www.google-analytics.com/analytics_debug.js
e esta liña de código antes do fragmento:
window.ga_debug = {trace: true};