Inscreva-se em minha Newsletter
Em JavaScript, se você quiser acessar um valor em um Array, use colchetes para recuperar o valor armazenado em um índice específico. Os índices são numerados em ordem, com o primeiro índice sempre será zero (0). Isso significa que para obter o primeiro valor armazenado no Array reulison, você usaria:
var PrimeiroValor = reulison[0];
No Google Tag Manager, você pode inserir Arrays no Data Layer . No entanto, o campo do Data Layer Variable (Variável da Camada de Dados) que você usa para recuperar valores armazenados no próprio Data Layer, não oferece suporte aos colchetes mencionados acima. Em vez disso, você precisa usar um formato especial para acessar os valores em um Array.
dataLayer.push({
'Array' : [{'nome' : 'produto1'}, {'nome' : 'produto2'}, {'nome' : 'produto3'}]
})
Acessando a variável do dataLayer:
Método | Variável |
---|---|
Array.0.nome | produto1 |
Array.1.nome | produto2 |
Array.2.nome | produto3 |
Para acessar os Arrays armazenados na Camada de Dados, você precisa usar uma notação de ponto no campo Variável da Camada de Dados. A notação de colchetes não é suportada. O número do índice começa em 0.
Esta é uma dica simples. Basta substituir os colchetes que você usaria no JavaScript por pontos. Assim, o clássico JavaScript Array[0].nome
torna-se Array.0.nome
no Gerenciador de tags do Google.
Observe que isso também significa que você também não pode usar a notação de colchetes para acessar as propriedades literais do objeto. Você precisa usar a notação de ponto o tempo todo.
Um exemplo prático está no rastreamento de comércio eletrônico. Para obter o SKU do primeiro produto em um objeto ecommerce.purchase
(Enhanced Ecommerce), você escreveria assim no Data Layer Variable:
ecommerce.purchase.products.0.id
Isso recupera o valor armazenado na chave de id
do primeiro produto no Array products
do objeto purchase
de comércio eletrônico avançado.