Wed. Jan 15th, 2025

#GTMTips: Dos trucos sencillos para modelos de datos


Uno de los conceptos más difíciles en Administrador de etiquetas de Google es el modelo de datosEn esencia, el modelo de datos es lo que utiliza Google Tag Supervisor para completar los datos. Variable de capa de datosPodrías sentirte tentado a pensar que es lo mismo que el dataLayer matriz, pero no lo es.

El modelo de datos es una representación de las claves y valores que empujar en dataLayer. Siempre que presione cualquier tecla dataLayerGTM toma esta clave y actualiza la clave correspondiente en su modelo de datos con el nuevo valor o, en el caso de objetos y matrices, fusiona el valor antiguo y el nuevo.

En este #ConsejosGTMT Artículo, estoy completamente en deuda con Señor Jethro Nederhof de Snowflake Analytics. Publicó estos dos trucos en Medir la holguray le pregunté si le parecía bien que los publicara en mi weblog. Él accedió amablemente, lo cual no es sorprendente, ya que su generosidad también dio origen a nuestro artículo de coautoría sobre Seguimiento del comportamiento de navegación Hace unos meses.


incógnita


El boletín informativo de Simmer

Suscríbete a la Boletín informativo de Simmer ¡Para recibir las últimas noticias y contenidos de Simo Ahava en tu bandeja de entrada de correo electrónico!

Consejo 85: Dos trucos sencillos para modelos de datos

Ambos consejos tienen que ver con la forma en que el modelo de datos procesa las claves y los valores que se le introducen.

El primer truco te permite prevenir fusión recursiva (útil en aplicaciones de página única donde no desea conservar valores introducidos en páginas anteriores, por ejemplo).

El segundo truco te permite acceder al estado precise del modelo de datos. Esto puede ser útil para varias cosas, pero especialmente si estás depurando tu configuración, puede ser útil ver todas las claves y valores que se encuentran actualmente en la tabla del modelo de datos.

Truco 1: Utilizar _clear: true para evitar la fusión de las claves en el objeto

Digamos que estás enviando algunas impresiones de productos a dataLayerEl primer impulso se ve así:

window.dataLayer = window.dataLayer || ();
window.dataLayer.push({
  merchandise: ({
    sku: '123',
    identify: 'Thick as a Brick'
  },{
    sku: '234',
	identify: 'Aqualung'
  })
});

En este punto, la clave merchandise En el modelo de datos habría dos objetos que representan los productos que se enviaron. Si tuviera que crear una variable de capa de datos para merchandiseeso es lo que también obtendrías como valor de retorno de la variable.

Entonces digamos que el usuario se mueve a otra sección del sitio sin cargar una página (por lo que es una aplicación de una sola página), y en esa página solo hay una impresión de producto, por lo que el sitio ejecuta el siguiente código:

window.dataLayer = window.dataLayer || ();
window.dataLayer.push({
  merchandise: ({
    sku: '345',
	identify: 'Near the Edge'
  })
});

Sería de esperar que el modelo de datos ahora tuviera solo un producto en el merchandise matriz, pero debido a cómo fusión recursiva funciona, el modelo de datos se ve así:

{
  merchandise: ({
    sku: '345',
	identify: 'Near the Edge'
  },{
    sku: '234',
	identify: 'Aqualung'
  })
}

Como puede ver, el segundo producto del primer impulso persiste, porque el nuevo producto simplemente se fusionó con el antiguo. merchandise formación.

Y aquí está La puntaPara evitar que se produzca esta fusión recursiva, debes presionar la tecla _clear con el valor true en el mismo objeto donde presionas las teclas no Quieren fusionarse con sus contrapartes. Por lo tanto, el segundo impulso se convierte en:

window.dataLayer = window.dataLayer || ();
window.dataLayer.push({
  merchandise: ({
    sku: '345',
	identify: 'Near the Edge'
  }),
  _clear: true
});

Así que ahora la clave está en el merchandise La matriz del modelo de datos solo tiene un objeto dentro.

Truco 2: Obtener la representación del objeto del estado precise del modelo de datos

Siempre puedes usar window.google_tag_manager('GTM-XXXXX').dataLayer.get(key) para obtener el valor precise del valor dado key del modelo de datos. Pero si quieres obtener el lleno Para conocer el contenido del modelo de datos precise, debe ejecutar el siguiente comando:

var dataModel = window.google_tag_manager('GTM-XXXXX').dataLayer.get({
  cut up: perform() { return (); }
});
console.desk(dataModel);

Si ejecuta el comando anterior en la consola JavaScript de su navegador, debería ver una bonita vista de tabla del modelo de datos precise:

¡Qué manera tan sencilla de ver cuál es el estado precise!

Resumen

Seré el primero en admitirlo: estos son trucos muy técnicos y específicos. Probablemente no los necesitarás a diario, ni siquiera mensualmente, en tus implementaciones.

Sin embargo, creo firmemente que entender cómo funciona el modelo de datos Funciona es una de las claves para liberar el verdadero poder de Google Tag Supervisor.

Y, de nuevo, un enorme Gracias a Jethro Nederhof por revelar estos sencillos trucos. Se le atribuye todo el mérito por el contenido de este artículo.

Related Post

Leave a Reply

Your email address will not be published. Required fields are marked *