El tipo de elemento de datos de objeto JavaScript no devuelve valor para los objetos que contienen un array.

Problema

Por ejemplo, el objeto de la capa de datos es el siguiente:

var dataLayer = window.dataLayer || [];
var dataLayer = [{
    'some':'thing',
    'products': [{
            'name': 'Gibson J-200',
            'tuning': 'High-G',
            'price': 449.75
        },{
            'name': 'Fender Stratocaster',
            'tuning': 'Drop-C',
            'price': 1699
    }],
    'stores': ['Los Angeles', 'New York'],
    'employee': {'name': 'Reggie'}
}];

Si se crea un Data Element en DTM utilizando notaciones de array como se muestra en la siguiente figura, se devuelve el valor por defecto configurado como "DLJSD Default" en lugar del valor correcto "Gibson J-200":

Entorno

Activación de la Dynamic Tag Management

Causa

 Al utilizar el tipo de elemento de datos de objeto JavaScript, Dynamic Tag Management no admite anotaciones de matrices.

Resolución

Para usar notaciones de matrices, utilice un elemento de datos de tipo "Script Personalizado":

Puede utilizar el siguiente script para el escenario de ejemplo:

return window.dataLayer["0"].products["0"].name;

Este script devuelve el valor "Gibson J-200" de la capa de datos de ejemplo.

Obtén ayuda de forma más rápida y sencilla

¿Nuevo usuario?