2016-12-14 87 views
0

我想在Google跟蹤代碼管理器觸發器中將產品ID用作標籤。 我有一個填充數據層。 當在Chrome控制檯我用Google跟蹤代碼管理器 - 數據層變量undefined

dataLayer[1].ecommerce.detail.products[0].id 

我得到的輸出有效的產品ID。

當在谷歌代碼管理工具創建自定義JavaScript變量和嘗試:

function(){ 
    var art_nr = dataLayer[1].ecommerce.detail.products[0].id; 
    return art_nr; 
} 

這個變量後來在只包含「未定義」的debuger。

我做了幾個小時的研究,但我無法找到一個簡單的解釋如何做到這一點。

回答

2

你不能(或者至少我不相信你可以)在變量中使用自己的名字引用dataLayer。您需要創建一個DataLayer類型變量並使用標準GTM變量表示法調用它。

你的數據層變量應被定義爲

ecommerce.detail.products.0.id 

(注意,使用點符號的。)

在您的自定義JS變量,你將與雙大括號格式調用它:

function(){ 
    var art_nr = {{variableName}}; 
    return art_nr; 
} 
+0

現在我在調試器中看到了相應的變量,我誤以爲自己好像。 ecommerce.detail.products.0.id的確是正確的,也沒有自定義的Javascript需要,這個符號可以直接用在變量類型的'數據層變量'中。爲了防止有人絆倒這個問題,可能會有所幫助。 – Brezelbub

相關問題