2016-11-30 57 views
1

我正在使用GTM容器來選擇性顯示跟蹤像素的跟蹤系統,但我遇到了一些障礙。GTM Cookie變量值清除Cookie仍然設置

設置基本上依賴於客戶端cookie,當用戶第一次訪問網站時,根據URL字符串中的參數設置。目前這部分工作正常,cookie被設置爲適當的值。

問題是,設置爲獲取第一方cookie值的GTM變量似乎無法在第一頁後實際獲取值。 Cookie仍然顯示在瀏覽器中,因此我無法弄清楚爲什麼會發生這種情況。就像GTM刷新頁面上的變量值時,由於某種原因第二次沒有看到cookie。

有關如何解決此問題的任何想法或建議將非常感謝!

更新:我發現問題出在我的GTM如何讀取cookie。似乎將它從我的Wordpress /購物車路徑中轉移到我的Wordpress /結帳路徑的過渡。我想知道如何讓cookie不那麼具體,以便它不會被限制到這樣一個離散的路徑。看來,目前我可以在任何地方訪問它的WordPress /車/ *路徑上而不是在WordPress的/ *

我在GTM定製JS變量設置cookie,像這樣:

function() { 
    return function(name, value, ms, path, domain) { 
    if (!name || !value) { 
     return; 
    } 
    var d; 
    var cpath = path ? '; path=' + path : ''; 
    var cdomain = domain ? '; domain=' + domain : ''; 
    var expires = ''; 
    if (ms) { 
     d = new Date(); 
     d.setTime(d.getTime() + ms); 
     expires = '; expires=' + d.toUTCString(); 
    } 
    document.cookie = name + "=" + value + expires + cpath + cdomain; 
    } 
} 

使用一個GTM標籤,每一個頁面,並檢查上觸發的cookie的存在,像這樣:

<script type="text/javascript"> 
    var source = ''; 
    if (window.location.search.indexOf('source=network1') !== -1) { 
    source = 'network1'; 
    } else if (window.location.search.indexOf('source=network2') !== -1) { 
    source = 'network2'; 

    } 
    {{setCookieHelper}}('source', source, 2592000000); 
</script> 

如何避免路徑是此cookie那麼具體將非常感激的任何想法。

+0

也許GTM在設置cookie的客戶端代碼之前運行?或者,在上次訪問時,cookie是否已經發生? –

+0

感謝您的回覆。我不認爲這是因爲它發生在路徑上的轉變。看看我的編輯:) – itchyspacesuit

回答

0

因此,經過漫長而漫長的文檔審查後,我意識到document.cookie設置cookie路徑的方式使用當前頁面作爲默認頁面。

例如,如果服務器123.123.123.123使用來自123.123.123.123/folder/test/index.php文件中的JS設置cookie,那麼Cookie的路徑參數將設置爲/ folder/test /默認。

這是一個問題,因爲如果您使用的是由於某種原因正在更改目錄的wordpress購物車,您將無法訪問存儲在該路徑下的cookie。 (例如,如果你有人去表格/文件夾/測試/文件夾/結帳/ GTM不再可見該cookie)

希望這可以幫助別人!