[英]Google tag manager - is it possible to push into dataLayer via GTM tag?
[英]Google Tag manager dataLayer push not storing object
我已經閱讀了幾篇SO帖子以及docs和api 。 我的理解是,當您將事件對象.push()
放入其中時, dataLayer
全局對象的行為應類似於Array並增加大小。 根據這里的截圖。
我的dataLayer對象不會像這樣增長。 它存在於窗口中,我可以運行
dataLayer.push({'event': 'trackEvent'});
沒有錯誤,只是它不會增加dataLayer的大小。
除了數組增長以外,我還能如何判斷.push()
是否正常工作?
當檢測到事件時,瀏覽器是否應該執行xhr請求?
GTM腳本在發送給Google之前,是否會根據GTM設置(標簽/觸發器)執行客戶端邏輯? 也就是說,事件沒有推送,因為它們沒有通過驗證。
如果要在localhost上進行測試,這有關系嗎?
我該如何解決?
數據層是一個數組,所以是的,它的行為應類似於數組。 單個項目是對象。
它不應該執行xhr請求,因為GTM已捆綁並下載到您的頁面中,所以不需要xhr。
GTM事件本身永遠不會發送給Google(它們僅用於觸發代碼,然后標記可能會將數據發送給Google。它們不會自動映射到Google Analytics(分析)事件)。 它們未經驗證,GTM只是修改push方法,以查看參數是否包含鍵“事件”(此時,GTM腳本的內部狀態將使用新值進行更新)。
加載GTM后,數據層似乎發生了一些變化(您有start事件,但是沒有gtm.dom或gtm.load),因此您可能要檢查在GTM代碼段后是否重新聲明了數據層。 但是要實際調試問題,如果我們能夠看到您如何嵌入GTM並設置數據層,這將有所幫助(如果有可能,我們可以瀏覽一下您的頁面或顯示相同問題的示例頁面,那將是很有幫助)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.