Páginas vistas

La medición de páginas vistas te permite saber cuántas veces se ha visto una página concreta de 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 la medición de páginas vistas con analytics.js.

Introducción

La etiqueta JavaScript incluye un comando para crear un objeto de seguimiento y, después, un comando para enviar una página vista a Google Analytics. Cuando se crea el objeto de seguimiento, se definen varios campos según el contexto de navegación. Al campo title se le asigna el valor de document.title, y al campo location se le asigna 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 esos valores para mostrarte qué páginas han visitado los usuarios.

El objeto de seguimiento predeterminado no define el campo page, pero si lo haces manualmente, el valor que definas se usará como ruta de acceso de la página en los informes y anula el valor del campo location.

Implementación

Para enviar hits de página vista, puedes ejecutar el comando send y especificar 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 esta tabla puedes ver un resumen de los campos principales para medir 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 los campos.

Nombre del campo Tipo de valor Obligatorio Descripción
title texto No Título de la página (por ejemplo, "página de inicio").
location texto No* URL de la página.
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 transfieren con 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 los ajustes de notificaciones, las URL de estas páginas podrían ser como las siguientes:

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

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

Para solucionar este problema, puedes especificar un valor de pagesin 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 pagepara 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.

Definirlo en el objeto de seguimiento garantiza que el nuevo valor de pagese 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 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 (APU).

Si tu 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 medir 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.