Seguimiento de páginas

El seguimiento de páginas permite medir el número de veces que se ha visto una determinada página en tu sitio web. Las páginas suelen corresponder a un documento HTML completo, pero también pueden representar contenido cargado dinámicamente, lo que se denomina "páginas vistas virtuales".

En esta guía se explica cómo implementar el seguimiento de páginas con analytics.js.

Descripción general

El fragmento de seguimiento JavaScript incluye un comando para crear un objeto de seguimiento y otro comando para enviar una página vista a Google Analytics. Cuando se crea el objeto de seguimiento, se configuran varios campos según el contexto de navegación. El campo title se configura como el valor de document.title y el campo location se configura como el valor de document.location, ignorando la parte fija de la URL.

Cuando se ejecuta el comando send, se envían los campos title y location almacenados en el objeto de seguimiento, y Google Analytics utiliza dichos valores para mostrar qué páginas han visitado los usuarios.

El objeto de seguimiento predeterminado no configura el campo page, pero, si lo configuras manualmente, dicho valor se usa como la ruta de acceso de la página en los informes, anulando el valor del campo location.

Implementación

Los hits de número de páginas vistas se pueden enviar mediante el comando send y especificando un hitType de pageview. El comando send tiene la siguiente firma para el tipo de hit pageview:

ga('send', 'pageview', [page], [fieldsObject]);

Campos de página vista

En la tabla siguiente se ofrece un resumen de los campos principales que son relevantes para el seguimiento de las páginas vistas. Si quieres obtener más información y conocer campos adicionales, consulta la sección sobre información del contenido de la referencia de campos.

Nombre del campo Tipo de valor Obligatorio Descripción
title texto No Título de la página (por ejemplo, "homepage").
location texto No * URL de la página de la que se realiza el seguimiento.
page texto No * Parte de la ruta de acceso de una URL. Este valor debe empezar por una barra diagonal (/).

* Aunque los campos page y location no son obligatorios, debe haber al menos uno de ellos para que el hit sea válido.

Ejemplos:

El comando siguiente envía un hit de página vista a Google Analytics e incluye la ruta de acceso de la página actual.

ga('send', 'pageview', location.pathname);

Al igual que sucede con todos los comandos send, los campos que se pasan en los parámetros auxiliares también se pueden especificar en fieldsObject. El comando anterior se podría reescribir de la siguiente forma:

ga('send', {
  hitType: 'pageview',
  page: location.pathname
});

Modificar las URL de página

En algunos casos, la URL que quieres enviar a Google Analytics es distinta de la URL que aparece en la barra de direcciones del navegador del usuario. Por ejemplo, imagina que un sitio web contiene páginas en las que los usuarios pueden iniciar sesión y ver o modificar su información personal. Si este sitio web tuviera páginas independientes para la información personal, la información de cuenta y la configuración de notificación, las URL de estas páginas podrían ser como las siguientes:

  • /user/ID_DE_USUARIO/profile
  • /user/ID_DE_USUARIO/account
  • /user/ID_DE_USUARIO/notifications

Si quieres saber el total de personas que han visitado cada una de estas páginas, incluir un valor de ID de usuario único en las URL dificultaría mucho más esta operación.

Para solucionar este problema, puedes especificar un valor page sin el ID de usuario:

// Checks to see if the current user's userID is
// found in the URL, if it is, remove it.
// (Note, this assume the user ID is stored
// in a variable called `userID`)

if (document.location.pathname.indexOf('user/' + userID) > -1) {
  var page = document.location.pathname.replace('user/' + userID, 'user');
  ga('send', 'pageview', page);
}

De este modo, se enviarán los siguientes valores de page para todos los usuarios:

  • /user/profile
  • /user/account
  • /user/notifications

Si la página actual envía otros hits (por ejemplo, eventos), es recomendable que te asegures de que se envíe cada uno con la URL correcta. En estos casos, debes actualizar el campo page en el objeto de seguimiento en vez de pasarlo en el comando send.

Configurarlo en el objeto de seguimiento garantiza que el nuevo valor page se usa para todos los hits posteriores:

if (document.location.pathname.indexOf('user/' + userID) > -1) {
  var page = document.location.pathname.replace('user/' + userID, 'user');

  // Sets the page value on the tracker.
  ga('set', 'page', page);

  // Sending the pageview no longer requires passing the page
  // value since it's now stored on the tracker object.
  ga('send', 'pageview');
}

Seguimiento de las páginas vistas virtuales

En la actualidad, muchos sitios web cargan el contenido dinámicamente mediante AJAX, sin que se precise una carga completa de cada "página". Dichos sitios web se suelen denominar aplicaciones de página única (SPA).

Si el sitio web carga el contenido de página dinámicamente y actualiza la URL del documento, es recomendable que envíes más páginas vistas para realizar el seguimiento de estas "páginas vistas virtuales". Para obtener información de la implementación completa, consulta la guía sobre el seguimiento de aplicaciones de página única con analytics.js.