2017-05-06 39 views
0

我需要在GTM中爲所有內部IP創建一個觸發器,然後我可以將其用作另一個熱圖型標籤的異常觸發器,對此我不想看到內部活動。我知道你可以添加自定義Javascript來將IP地址推送到數據層,但是我正在尋找的是一個觸發器,它只是說「如果訪問者的IP是XXXX.XXXXX.XXXX,我會觸發。然後我可以使用這些作爲異常觸發器。有人能幫忙嗎?或者,如果這不起作用,是否有任何其他方式來過濾基於IP的流量?請注意,這需要在開發人員的最小幫助下完成(我是一位具有非常基本Javascript知識的營銷人員)。如何在不使用數據層的情況下在Google跟蹤代碼管理器上創建基於IP的觸發器?

回答

1

您可以通過跟蹤代碼管理器完成此操作。

在第一步中,您應該構建自己的數據層 - 您可以通過標記管理器將其作爲自定義HTML進行引用。這coulkd是這樣的:

#Get the IP-Adress 
x=$.get('http://jsonip.com/', function(r){ console.log(r.ip); }) 
y=x.responseText 
#Push the data-layer 
dataLayer.push({'ip': y}); 

如果你得到這個你可以在標記管理工具建立一個變量來獲取數據,並用此數據層建立一個TRUE/FALSE邏輯作爲觸發。

+0

唯一的問題是,[開發指南](https://developers.google.com/tag-manager/devguide#datalayer)說要添加數據層代碼單獨到現場,而不是通過GTM本身。有沒有辦法解決? – RankSinatra

+0

這不是一個真正的問題,您可以使用標記排序(即使一個標記與另一個標記相關),以確保在啓動熱圖標記之前ip可用。從GTM內部修改數據層是很常見的做法。更大的問題似乎是延遲 - 您必須等到jsonip.com/的請求返回結果後再繼續。 –

+0

哦,對。我沒有想到排序。謝謝! 有沒有辦法讓這個過程更快,或者這是我所希望的最好的? – RankSinatra

0

GTM無法通過IP過濾,因爲它不具有包含您的IP的變量。

您需要將用戶(內部/外部)IP作爲dataLayer變量發送,或者使用javascript獲取用戶IP。

然後添加一個類型爲custom javascript的GTM變量,然後在GTM觸發器中將它用作阻止您的標籤的規則。

如何獲得客戶IP?看看這個: How to get client's IP address using javascript only?

相關問題