GTM极大的简化了跟踪不同用户的交互,用户的交互可以被GTM监测并且能被GA通过事件跟踪到,GA的事件跟踪在GTM中是通过代码,触发器和变量配置实现的。
代码是用于收集和向GA发送交互数据
触发器是用于定位代码触发条件,只有触发器触发了,对应的代码才会执行,发送数据。
变量是用于抓取页面信息或给触发器或代码提供基础变量
触发器主要分为四个类型:网页浏览、点击、用户深度互动情况和其他。
页面浏览
页面流量就是在页面加载、流量过程中会触发的触发器,一共有5个,按加载顺序如下:
- 用户意见征求初始化:旨在帮助确保先遵循用户意见征求设置(实施CMP),然后再触发其他任何触发器。这个是GTM支持CMP的部署,详细可以看Google Tag Manager里的Consent Mode意见征求模式。
- 初始化:应在所有其他触发器(用户意见征求初始化触发器除外)之前触发。
- 页面浏览(现在改名为容器加载):在网络浏览器开始加载网页时立即触发,一般的,大部分的代码是在这里触发。
- DOM已准备就绪:在浏览器在 HTML 中完成整页构建且文档对象模型 (DOM) 做好解析准备后触发。当 Document Object Model准备好的时候触发,也就是已经渲染完所有html元素,当我们需要跟踪某些东西已经被呈现出来的时候需要用这个触发器。
- 窗口已加载:在页面(包括图片和脚本等嵌入资源)完全加载显示信息后触发。
下面看一下在调试过程中,它们的执行顺序:
点击
这类型触发器可以监听到用户的大部分交互,如鼠标点击,具体有两种类型:
- 仅链接:点击后是有链接跳转的。
- 所有元素:所有位置的点击。
仅链接
如果你要跟踪导航栏的点击,或是跟踪页面带有链接的点击,如下单或邮件,这时将选择点击触发器里面的仅链接。
假设我现在需要跟踪这个位置的点击:
查看它的源码,这一行就是它的源码:
从代码中可以获悉:
- Click URL是https://www.ichdata.com/about-me.html
- Click Text是关于作者
我们就可以通过该这两个属性去定位,只要其中一个就可以了,这里用Text:
到这里触发器还么设置好,可以看到有两个选项:
- 等待代码触发完毕:这个设置就是延时多久才触发
- 检查验证结果:这个是真的打开了才触发,如果没有勾选这个,那这个仅链接触发器就等同于所有元素触发器,所以在使用仅链接触发器的时候,往往需要勾选这个,勾选后会多一个设置选项,这个只是设置一定匹配就行。
完整的设置如下:
这样就设置好这个触发器了。
所有元素
假设我现在需要跟踪这个位置的点击:
查看它的源码,这一行就是它的源码:
从代码中可以获悉:
- Click Classes是g-mono
- Click Text是GA小站
我们就可以通过该这两个属性去定位,只要其中一个就可以了,这里用Click Classes:
这样就设置好这个触发器了。
用户深度互动情况
- Youtube视频:跟踪页面嵌入Youtube视频的播放情况,示例:Google Tag Manager中的YouTube视频触发器
- 元素可见性:跟踪页面元素可见情况,示例:元素可见性触发器
- 滚动深度:跟踪页面滚动情况,示例:GTM中的自定义滚动深度触发器
- 表单提交:跟踪表单提交,示例:GTM中表单提交的用法
其他
- JavaScript错误:用来在发生未捕获的 JavaScript 异常 (window.onError) 时触发代码。
- 历史记录更改:可以用来触发对 Ajax 应用中的虚拟网页浏览进行跟踪的代码。
- 定时器:利用 Google 跟踪代码管理器的计时器触发器,您可以按照定时间隔向跟踪代码管理器发送事件。
- 自定义事件:用于跟踪您的网站或移动应用上发生的、未按标准方法处理的互动。
- 触发器组:触发器组会将两个或多个触发器的条件作为一个进行评估。只有在全部选定触发器都至少触发一次之后,触发器组才会触发。
这里面用的最多是的自定义事件,在需要用到数据层的时候,需要在数据层里添加一个event,用于触发数据,对应的就是这里的自定义事件,比如在配置电商里面经常会用到,以purchase为例:
通过上述的快速预览,希望你对GTM的触发器有一个基本的了解。