GTM 设置追踪使用者的Cookies的方法和教程

GTM 设置追踪使用者的Cookies的方法和教程

利用 Google Tag Manager (GTM) 设置追踪使用者的 Cookies,主要是为了记录用户行为、偏好或者其他相关数据,方便后续分析和营销活动。以下是设置 Cookies 的详细步骤:


前提准备

  1. 确保已安装并部署 GTM 代码: 在您的网站中正确安装了 GTM 容器代码。
  2. 明确 Cookies 的用途: 确定需要追踪哪些数据,例如用户的登录状态、访问来源、页面行为等。
  3. 了解 Cookie 法规: 如果您的用户来自欧盟等地区,请确保遵守 GDPR 和其他隐私法规,并获取用户的同意。

步骤一:创建 JavaScript 变量

  1. 登录 GTM 后台: 进入 GTM 容器管理界面。
  2. 创建变量
    • 在左侧导航栏选择 “变量”,点击 “新建”
    • 命名为 “Get Cookie” 或类似名称。
    • 选择 “第一方 Cookie” 类型。
  3. 配置 Cookie 变量
    • 在配置页面,输入目标 Cookie 的名称。例如,如果要追踪 user_session Cookie,填写 user_session
    • 保存设置。

步骤二:创建触发器

触发器决定何时读取或写入 Cookies。

  1. 新建触发器
    • 点击左侧的 “触发器”,选择 “新建”
    • 命名为 “Cookie Tracking Trigger”
  2. 选择触发条件
    • “所有页面”:在每个页面加载时触发。
    • “特定页面”:在特定 URL 上触发。
    • “事件触发”:如按钮点击、表单提交时触发。
    • 根据需求设置触发条件,例如:
  3. 保存触发器

步骤三:创建标签

标签负责执行代码来读取、写入或发送 Cookie 数据。

  1. 新建标签
    • 点击左侧的 “标签”,选择 “新建”
    • 命名为 “Set Cookie Tag” 或 “Track Cookie Tag”
  2. 选择标签类型
    • 如果需要记录 Cookie 数据,选择 “自定义 HTML”
    • 如果需要发送数据到 Google Analytics,选择 “GA4 配置” 或 “GA4 事件”
  3. 输入代码(示例代码): 使用 JavaScript 操作 Cookies:
    html复制代码<script>
        // 写入 Cookie 示例
        document.cookie = "user_session=" + encodeURIComponent("example_value") + "; path=/; max-age=3600";    // 读取 Cookie 示例
        function getCookie(name) {        const value = `; ${document.cookie}`;        const parts = value.split(`; ${name}=`);        if (parts.length === 2) return parts.pop().split(';').shift();
        }    console.log(getCookie('user_session'));</script>
  4. 关联触发器: 将标签与前面创建的触发器(如“Cookie Tracking Trigger”)关联。
  5. 保存标签

步骤四:测试与预览

  1. 点击 GTM 界面右上角的 “预览” 按钮。
  2. 在弹出的 Tag Assistant 中输入您的网站域名。
  3. 验证:
    • 检查触发器是否正确触发。
    • 检查 Cookies 是否被正确写入或读取。

步骤五:发布更改

  1. 测试无误后,点击右上角的 “提交” 按钮。
  2. 填写版本说明,例如 “Added Cookie Tracking”
  3. 点击 “发布”

注意事项

  1. Cookie 生命周期: 根据需求设置 max-age 或 expires 属性,决定 Cookie 的有效期。
  2. 安全性
    • 对于敏感数据,确保 Cookie 使用 Secure 和 HttpOnly 属性。
    • 使用 SameSite 属性避免跨站点请求伪造(CSRF)攻击。
  3. 隐私合规
    • 如果需要遵守 GDPR,建议结合 用户同意管理平台 (CMP)
    • 使用 GTM 的 Consent Mode 确保在用户同意前不记录 Cookies。

通过以上步骤,您可以成功使用 GTM 来设置和管理用户 Cookies,并实现灵活的追踪和分析功能。

方法1 – 用「自订HTML」设置Cookie

假设公司今天与网红合作,请网红宣传并引导流量至网站上购买产品,为了方便统计哪一位网红的成效较好,每一位网红所使用的网址都带有特定的参数,类似下面这样。

www.abc.com/?influencer_id=NetRed

(红字为辨别网红的参数)

透过不同的influencer_id,我们便可以知道哪一位合作伙伴有促成本次的购买,方便作为异业合作部门行销成效的统计。

你可能会想说,既然是网址的参数,我们用「网址」变数来取得资料是不是就可以了?

没错,如果你的网址是直接来到结帐页面,使用者从点击网址到结帐完成,一气呵成,没有换页的话,那么这么做是可行的。

只要有了换页行为,原本在网址上的参数就会消失,我们就无从得知是来自于哪个合作伙伴的导购了。

这也是为什么我们需要先将该参数存入Cookie 中的原因,如此一来,才能够帮助我们做到较为精准的统计。
ㅤㅤ

设置「网址」变数

首先,我们需要在网址中出现 influencer_id时,抓取该参数的值,这部分的操作相当简单,只要使用「网址」变数来取得资料就可以。

GTM 左侧面板选择「变数」> 右边下方「使用者定义的变数」区块选择「新增」> 选择「网址」变数。

 

 

在「元件类型」下拉选单中选择「查询(query)」,于「查询键」栏位输入influencer_id

 

 

完成之后,记得先到「预览模式」测试,确保当使用者透过带有参数的网址来到网站时,设定的「网址」变数有抓到该参数的「」。

 

 

确定有正确抓取到我们需要的「」之后,就可以开始来用「自订HTML」代码设定Cookie 了。

设定「自订HTML」代码

接下来,我们要将一段Javascript 代码放置到「自订HTML」代码中,看不懂这串Javascript 代码的朋友没关系,只要知道如何复制贴上并且修改几个地方就可以了(当然,如果你愿意去了解,更好)。

这段Javascript 在处理的,是将我们需要的「」(也就是上一个段落设定的「网址」变数),存入到Cookie 当中。

如此一来,尽管使用者换页造成网址的参数遗失,我们依然可以知道这位使用者曾经透过特定合作伙伴的连结来到网站(只要没有使用不同浏览器回到网站的话)。

GTM 左侧面板选择「代码」 > 右上角点击「新增」> 点击「请选择代码以开始设定」> 右侧面板选择「自订HTML

 

 

将连结内的Javacript 代码贴入到HTML 栏位中,这串Javascript 看不懂没有关系,我们只需要修改下图中第14 行中括号内的3 个项目就可以,这3 个项目分别代表的是:

  • InfluencerID」 的位置是设置你的「Cookie 名称」的地方。
  • {{PageUrlV – influencer_id}}」的位置为设置「Cookie 值」的地方。
  • 7」的位置为设置「Cookie 到期时间」的地方。

括号内依序为「Cookie 名称」、「Cookie 值」以及「Cookie 到期时间」,可以到这边复制完整的代码,再进行修改就可以了。

 

 

设定完毕之后,按下储存,到这边,我们就透过「自订HTML」代码完成了设置Cookie 的代码设定。

你也可以直接复制以下代码(红色标示处是要你要更改的部分):

<script>
  // 函數:設置 Cookie
  function setCookie(name, value, days) {
    var expires = "";
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        expires = "; expires=" + date.toUTCString();
    }
    document.cookie = name + "=" + (value || "")  + expires + "; path=/";
  }
  // 調用函數設置 Cookie
  setCookie('輸入你的Cooki名稱', '{{你的「網址」變數}}',輸入Cookie於多久到期); 
 </script>

补充一下:在「自订HTML」 代码中使用其它变数

GTM「自订HTML」代码有个很棒的功能,就是你可以在代码中呼叫该GTM 容器中的「变数」,只要输入「{{」(不含上下引号),就会出现「变数」的下拉选单,不管是「内建变数」或是「使用者自订义」的变数,都会显示在选单当中,非常方便。

 

 

未来如果有遇到类似的设定时,都可以用这样的方式在「自订HTML」代码中取得该容器中其它的变数「」。

设定「触发条件」

我们不需要这段「自订HTML」代码在全站所有页面启动,只需要当网址有出现influencer_id的时候启动这组代码就可以。

因此,我们会使用「网页浏览」触发条件,设定方式如下:

GTM 左侧面板选择「触发条件」 > 右上角选择「新增」> 点击中间「请选择触发条件类型以开始设定」 > 选择「网页浏览

 

 

选择「部分的网页浏览」,条件设定当选择「Page URL」 包含「influencer_id」时,满足该触发条件,进而启动「自订HTML」代码。

(注意,要选择「Page URL」 变数,才有办法抓到网址末端「」之后的参数,也就是范例中的influencer_id,如果选择「Page Path」变数,是抓不到参数资料的。

关于网址结构的部分,可以参考文章「GTM 网址变数介绍」中的网址结构段落,有更进一步的解释。)

 

 

设定完毕之后,将触发条件与前面的「自订HTML」代码进行绑定,就可以透过「预览模式」进行测试了。


测试一下

在「预览模式」中,预期应该要看到「自订HTML」代码的启动,接着我们还要检查网页上是否有储存到我们预期的Cookie。

一样,我们测试带有参数influencer_id=RedNet 的网址。

 

 

在「预览模式」画面中,应该要看到「自订HTML」代码成功启动。

 

 

接着透过网页开发者工具检查,Cookie 是否有成功设定,且存入正确的「」。
(以我们的范例来说,Cookie 名称应为InfluencerID,其「」为RedNet。)

如何透过网页开发者工具检查(Dev Tool)?

于网页的空白处点选右键> 选择「检查」> 于检查工具的页签中选择「Application」 > 左侧选单中选择并展开「Cookies」 > 选择自家网站网域> 应于右侧看到我们所设定的Cookie

 

 

如果可以看到我们设定的Cookie 名称,以及抓取到正确的「值(RedNet)」,就代表设定成功,可以将代码发布了。


方法2 – 用「范本库」中的代码范本

如果你看到Javascript 代码就感到头晕,没事,这是可以理解的,要行销人员去认识这些如同无字天书的代码,实在是劳心劳力。

所以,接下来要介绍的方式,是用GTM 中的「范本库」来协助我们,步骤相对简单,也不用看到扰人的Javascript 代码,ㄧ样能完成所需的Cookie 设定。

GTM 左侧面板选择「代码」> 右上角点选「新增」> 「请选择代码类型以开始设定」 > 选择社群范本库(如下图)> 于范本库中搜寻「Cookie」 > 选择「Cookie Creator

 

 

选择后,将代码「新增至工作区」 > 要使用社群范本需要给予权限,这边「新增

(如果不给予权限就无法使用,这边要注意的是,之所以叫做社群范本就是指这些范本并非官方开发,因此如果你对使用上有疑虑,建议使用前述的「自订HTML」代码方式进行设定。)

 

 

调整范本设定

接下来,我们必须要对范本进行一个小调整,以便我们可以新增任何我们想要的Cookie 名称。

GTM 介面左侧面板选择「范本」 > 选择右侧「Cookie Creator」进入范本设定画面> 点击「权限」页签> 展开「设定Cookie」选单> 删除第二列的Cookie > 编辑第一列的Cookie

 

 

我们必须将Cookie 名称的栏位改为「*」,表示允许任何Cookie 名称的命名,接着点选右上角的储存。

否则尽管在GTM 「预览模式」中会看到代码启动,但因为使用者针对Cookie 的命名与范本预设名称不符,Cookie 便不会设置成功。

 

 

设定「范本」代码

完成范本的新增以及设定之后,接下来,就可以使用该范本进行代码设定,抓取我们需要的「」,并将其存到Cookie 当中。

翻译成白话文就是

用范本「Cookie Creator」建立代码,抓取网址末端的参数「influencer_id」,并将其透过「Cookie Creator」存到Cookie 中。

GTM 左侧面板选择「触发条件」 > 右上角选择「新增」> 点击中间「请选择触发条件类型以开始设定」 > 选择「Cookie Creator

 

 

接下来,就如同修改「自订HTML」代码一样,依序在以下栏位中,填入「Cookie 名称」、「Cookie 值」以及「Cookie 到期时间」,只不过这次的设定介面,相较起来友善了许多。

 

 

最后,将透过Cookie Creator 设定的代码与前面设定的「网页浏览」触发条件进行绑定后,进入「预览模式」进行测试,预期应该要在开发者工具的Application 页签的Cookie 清单中看到刚刚设定的Cookie (名称为InfluencerIdByCookieCreator )。

(测试流程与前面所做的相同,这边就不再重复赘述。)

 

 

确认该Cookie 存在之后,就表示设定完成,可以提交你的GTM 容器了。


了解如何设定之后,接下来最重要的,就是要知道可以如何应用。

关于这点,我们在过去的文章「GTM 变数介绍:第一方Cookie(1st Party Cookie Variable)」中有详尽介绍了应用的方式,

文中同样是使用inluencer_id作为范例,搭配这篇一起操作,你应该就能举一反三应用在其它地方了。


总结一下

当行销人员可以自行透过GTM 为网站设置Cookie 时,我们就可以轻易地做出很多追踪的变化。

例如:
针对看过网站上特定广告的使用者,给予一个Cookie,并设定7 天后到期,在到期之前,使用者在网站上都不会再看到该广告,降低对使用者的干扰。

或是针对曾经登入过的使用者,给予一个Cookie,当他们再度来到网站时,不会对他们弹出加入会员的邀请视窗(但请不要储存个人资讯到Cookie 中)。

也可以利用Cookie 来记录曾经在特定时间内,浏览过特定页数或是页面的使用者,给予这些使用者不同的弹窗广告。

<<:  外贸网站如何选择域名:教你正确选择网站域名的方法和外贸网站域名指南

>>:  想辞职了用什么诗词来形容

推荐阅读

绷带会改变颜色来指示下方伤口的状态

德国研究人员发明了一种绷带,一旦出现感染迹象,它就会变成紫色。慕尼黑弗劳恩霍夫模块化固态技术研究所 ...

中国称发现可能储量丰富的稀有超导材料

铌可用于钢铁、粒子加速器、核磁共振成像仪和火箭,但其来源主要局限于巴西和加拿大等少数几个国家。然而,...

这是一个令人难以置信且惊人的标题

如果将汽车和摩托车结合在一起,会发生什么?本田决定一探究竟,于是在其年度全球设计项目中让 80 多位...

Windows 有一个隐藏的剪贴板管理器——下面介绍如何找到它

复制和粘贴是我们日常计算中必不可少的一部分,我们大多数人都是自动完成的。但有时我们会出错——我们复制...

蒙奇·三吉:我们的舰队:全面回顾迷人的角色和故事的深度

《蒙奇三吉和他的邻居们的舰队》:战前日本动画的杰作1936 年上映的《猴子三吉和他的邻居们的舰队》是...

不要错过观看冰火山“魔鬼彗星”的机会

在接下来的几天里,天文爱好者们有机会看到的不仅仅是明亮的水星或四月的日全食。一颗不寻常的“魔鬼彗星”...

这种遥控地雷将从上方攻击坦克

为了控制未来的战场,美国陆军正在寻找一种具有特定升级功能的新型反坦克地雷:它可以由机器人设置到位,并...

供应链问题会影响你想要的书籍吗?取决于你读的是什么书。

新冠疫情初期,卫生纸的供应链问题也随之而来,现在又冲击了另一种深受人们喜爱的纸质产品:纸质书籍​​—...

现在在亚马逊上购买 Dymatize 和 Premier 的蛋白奶昔和蛋白粉即可享受 30% 的折扣

蛋白质奶昔永远不会嫌多,现在正是囤货的好时机,因为亚马逊有 Premier Protein 预混合奶...

为什么空军想在机器狗上安装激光雷达

空军基地遭到直接袭击后,重建需要做些什么?2018 年,飓风迈克尔席卷了佛罗里达州狭长地带的廷德尔空...

美国军方特别工作组将探索生成式人工智能

ChatGPT 或 DALL-E 等热门人工智能应用越来越受到大众的欢迎,国防部也注意到了这一点。为...

风险业务:23andMe 和 FDA

作为一名遗传学家,我花了很多时间研究基因组。但直到去年我在伯克利教授“遗传学与社会”课程之前,我从未...

在我们的 Deal Days 促销期间,以折扣价购买 PlayStation Plus Essential 年度订阅服务

索尼终于注意到了世界各地游戏玩家的需求,并为其 PlayStation Plus 订阅提供了更多选项...

科学研究明确:金属音乐有益健康

对于外行来说,金属音乐——尤其是死亡金属和碾核等更极端的形式——听起来就像愤怒的穴居人写的旋律。它充...

现在是您以 300 美元优惠获得 Babbel 终身订阅的最后机会

新年即将来临,随之而来的是全新的冒险。如果旅行是你的首要任务,那么语言准备与制定行程同样重要。如果你...