Uso de complementos

Los complementos son secuencias de comandos que mejoran la funcionalidad de analytics.js para ayudar a medir la interacción del usuario. Por lo general, los complementos son específicos para un conjunto de funciones que pueden no ser necesarias para todos los usuarios de Google Analytics, como el ecommerce o las mediciones multidominio y, por lo tanto, no se incluyen en analytics.js de forma predeterminada.

En esta guía, se explica cómo solicitar y usar complementos de analytics.js.

Complementos necesarios

El comando require toma el nombre de un complemento y lo registra para usarlo con la cola de comandos de ga(). Si el complemento acepta las opciones de configuración, estas se pueden pasar como el argumento final al comando require.

A continuación, se muestra la firma completa del comando require:

ga('[trackerName.]require', pluginName, [pluginOptions]);

Por ejemplo, a continuación, se muestra cómo necesitarías el complemento Enhanced Ecommerce para usarlo con el servicio de seguimiento predeterminado:

ga('require', 'ec');

A continuación, se muestra cómo necesitarías el complemento Advertising Features para un rastreador llamado "myTracker" y pasar una opción de configuración que anule el valor predeterminado del nombre de la cookie:

ga('myTracker.require', 'displayfeatures', {
  cookieName: 'display_features_cookie'
});

Cómo cargar el código del complemento

El comando require inicializa los métodos del complemento para usar con la cola de comandos ga(), pero no carga la secuencia de comandos del complemento. Si usas un complemento de terceros o estás escribiendo un complemento, deberás agregar manualmente el código del complemento a la página.

El método recomendado para agregar código de complemento a la página es usar una etiqueta <script> con el atributo async establecido para garantizar que no bloquee la carga de otras funciones en tu sitio.

El siguiente código requiere y carga un complemento hipotético de seguimiento de vínculos:

<script>
ga('create', 'UA-XXXXX-Y', 'auto');
ga('require', 'linkTracker');
ga('send', 'pageview');
</script>

<!--Note: plugin scripts must be included after the tracking snippet. -->
<script async src="/path/to/link-tracker-plugin.js"></script>

Esperando a que se carguen los complementos

Dado que tanto la biblioteca analytics.js como los complementos de analytics.js se cargan de forma asíncrona, puede ser difícil saber cuándo los complementos están cargados por completo y listos para usarse.

Para solucionar este problema, la biblioteca analytics.js detiene la ejecución de la cola de comandos cuando encuentra un comando require para un complemento que aún no se cargó. Una vez cargado el complemento, la ejecución de la cola continúa con normalidad.

Por ello, es extremadamente importante que pruebes los complementos que utilices para asegurarte de que se carguen y se ejecuten correctamente. Si un complemento no se carga o tiene un error, impedirá que se ejecuten todos los comandos analytics.js posteriores.

Cómo llamar a métodos de complementos

Una vez que se solicita un complemento, sus métodos están disponibles para su uso con la cola de comandos de ga(). Esta es la firma del comando para llamar a los métodos de complementos:

ga('[trackerName.][pluginName:]methodName', ...args);

Por ejemplo, se puede llamar al método addProduct del complemento Enhanced Ecommerce de la siguiente manera:

ga('ec:addProduct', {
  'id': 'P12345',
  'quantity': 1
});

O bien, en un dispositivo de rastreo con nombre, agrega el nombre de este a la cadena de comandos:

ga('myTracker.ec:addProduct', {
  'id': 'P12345',
  'quantity': 1
});

Próximos pasos

Si leíste todas las guías de esta sección, deberías estar familiarizado con la mayoría de las funciones de analytics.js. En la siguiente guía, se explica cómo depurar tus implementaciones de analytics.js para detectar errores con mayor facilidad y ver exactamente lo que hace tu código.