www snippet sirve que para googleanalyticsobject google example code async javascript html5 web-applications google-analytics single-page-application

javascript - snippet - Google Analytics: ¿cómo rastrear páginas en una aplicación de una sola página?



universal analytics (5)

Actualmente, en mi sitio web , utilicé HTML5''s pushState() y popState en enlaces para aumentar la velocidad. Sin embargo, esto realmente no cambia la URL real y parece que afectará y estropeará el código de Google Analytics . (no muestra un cambio de URL) ¿Hay una posible solución para esto? Gracias,


En el momento de escribir, aquí en septiembre de 2013,
Google Analytics tiene una nueva API de JavaScript.

Después de haber incluido el nuevo fragmento asincrónico de " analytics.js " de Google, use el comando enviar vista de página para rastrear páginas:

ga(''send'',''pageview'');

Después de su locura de pushState, use este comando send pageview para rastrear su navegación asincrónica. De acuerdo con la Documentación de Google en el seguimiento de página con Analytics.js , el comando enviar vista de página leerá mágicamente y rastreará la nueva ubicación dada por pushState, ya que, en el momento en que se llame al comando enviar página , use los siguientes valores por defecto (aunque usted puede especificarlos):

var locationToTrack = window.location.protocol+''//'' +window.location.hostname +window.location.pathname +window.location.search; var titleToTrack = document.title; var pathToTrack = location.pathname+location.search;

Tenga en cuenta que el fragmento de analítica estándar de Google incluye un comando de enviar vista de página inicial.

Actualizar:

Implementé el seguimiento de Google Analytics en mi sitio web de la manera que describí arriba; sin embargo, parece que no realiza un seguimiento exitoso de ninguna de las vistas de página de pushState.

Voy a tratar de especificar la ubicación, el título y el nombre de la página explícitamente en el comando enviar vista de página, y ver si las pistas de GA son correctas.

Publicaré con los resultados, a menos que lo olvide.


También tuve problemas con ga (''send'', ''pageview''); luego de usar history.pushState.

La solución fue simplemente hacer explícita la URL. ga (''enviar'', ''página vista'', ''/ mi-url'')


Si está utilizando la última API analytics.js , la documentación de Google requiere el siguiente código para activar el evento:

ga(''send'', ''pageview'', ''/some-page'');

Si está utilizando la antigua API de ga.js , David Walsh sugiere que los sitios web de AJAX utilicen el método _gaq.push :

_gaq.push([''_trackPageview'', ''/some-page'']);


Sé que es una vieja pregunta, pero dado que esta pregunta es el primer resultado en Google sobre el seguimiento de pushState () en Google Analytics y todas las respuestas son incorrectas, decidí responderlas.

En otras respuestas mencionaron usar directamente ga (''enviar'' .....) pero esta es la manera incorrecta de hacerlo.

Primero tienes que ''configurar'' los parámetros y luego usar ''enviar'' para rastrearlo.

Si desea actualizar solo la url, use el siguiente código

// set new url ga(''set'', ''page'', ''/new-page''); // send it for tracking ga(''send'', ''pageview'');

Si desea actualizar url y título, agregue un parámetro de título a él

// set new url and title ga(''set'', { page: ''/new-page'', title: ''New Page'' }); // send it for tracking ga(''send'', ''pageview'');

Seguimiento de aplicaciones de una sola página fuente: seguimiento web (analytics.js)


Respuesta reciente (2017)

Ahora puede usar autotrack.js de Google , un script que mejora analytics.js .

Incluye un complemento que rastrea automáticamente los cambios de URL para aplicaciones de una sola página.

Solo necesita incluir el script y la siguiente línea en su html:

ga(''require'', ''urlChangeTracker'');