触发标记基于着陆页

时间:2016-07-15 11:29:09

标签: google-tag-manager

我正在尝试在Google跟踪代码管理器中触发基于着陆页(会话的第一页)的标记。我想要实现的是,只有当会话中的每个后续页面上的目标网页是example.com/landing-page/ 时,才会触发此标记。

因此,如果用户登陆example.com/another-landing-page /.

,我不想在example.com/landing-page/上触发此标记。

我正在考虑将着陆页存储在一个变量中,该变量将在整个会话期间保存并基于此标记。但我不知道该怎么做。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

GTM没有任何类型的持久性内存,也无法将变量从一个页面转移到另一个页面。因此,您需要自己设置一个cookie,并在后续页面中查找它。

设置JS cookie的绝对准系统代码是:

document.cookie = "key=value";

将使用名称" key"设置第一方会话cookie。和价值"价值"在当前域名上。这实际上对您来说可能已经足够了(会话cookie意味着如果浏览器关闭,cookie将会过期,这听起来像你想要的,否则you could add an expiry date etc)。

您无需担心读取cookie的代码,因为这是GTM通过"第一方cookie"变量类型。创建该类型的新变量,为其命名,在创建cookie时将cookie名称设置为您选择的任何名称,变量将从cookie返回值。

因此,您首先要使用包含用于创建cookie的JS代码的自定义HTML标记

<script>
    document.cookie = "landingpage=true";
</script> 

接下来,您需要一个规则来触发标记。

您只想在着陆页上设置Cookie,因此您可以在触发器中检查着陆页网址。此外,您只希望在页面为目标网页时设置它,以便查看引荐网址是否包含您自己的主机名(在这种情况下,它不是登录页面):

enter image description here

现在你有了你的cookie,你想要随后根据cookie的存在来激活标签。 GTM将其Javascript注入您的页面,这意味着您通过GTM设置的Cookie是第一方Cookie,因此您可以使用第一方Cookie变量类型通过查看其值来检查Cookie是否存在:

enter image description here

现在,您可以在触发器中使用它来触发后续标记:

enter image description here

这可能需要一些小的调整,但原则是合理的,它应该足以让你前进。