la tienda que administro envía datos a Google Analytics - Comercio electrónico mejorado utilizando el siguiente código y no a través de dataLayer.
ga('ec:setAction', 'purchase', { 'id': '1014', 'revenue': '69.06', 'shipping': '0.00', 'tax': 0 }); ga('send', 'pageview');Ahora, ¿cómo puedo agregar el valor de los 'ingresos' a una variable de Tag Manager?
Probé el siguiente código en una variable de script de Java personalizada, pero no funciona.
ga(function() { var test = ga.getByName('revenue'); return test; })Ahora, exactamente porque no envió los ingresos a la DL, no podrá acceder a ella en GTM.
Técnicamente, aún podría obtenerlo mediante una anulación oscura de la función ga(), pero eso sería una exageración.
Otra opción sería intentar analizar el valor de DOM o buscarlo en el ámbito global.
Sin embargo, la mejor ruta desde aquí sería enviar explícitamente la información que necesita a la capa de datos para que esté disponible para GTM. Ese es un beneficio importante de usar el seguimiento EEC basado en DL: tiene toda la información disponible en caso de que sea necesaria para otras etiquetas. Las etiquetas de terceros a menudo quieren saber cosas como totales, identificadores de transacciones y demás para una atribución adecuada.
Habiendo dicho eso, sugeriría nunca llamar directamente a la función ga. Tener todo el seguimiento en un solo lugar (GTM/DL) facilita mucho la depuración. Especialmente para las personas que vienen después de ti.