欢迎访问我的博客,有问题可以在任意文章底部留言评论

GTM自定义模板快速入门:用Community Template集成百度统计

GTM代码 Haran 7年前 (2019-06-03) 7941次浏览 4个评论
文章目录[隐藏]

什么是自定义模板(Community Template)

自定义模板(Community Template)是Google Tag Manager(GTM)提供的一种标准化、可复用的标签开发方式。

它允许开发者将原本需要手写JavaScript的埋点代码,封装成安全、可配置、可分享的模板,还可以在社区模板库(Gallery)中进行更广泛的分发,供全球用户使用。

简单说:把复杂、易出错的埋点代码,做成像“插件”一样可直接使用的Tag。

 

自定义模板编辑器预览

在GTM的模板编辑器(Template Editor) 中,你可以创建、预览和测试自定义模板。

GTM自定义模板快速入门:用Community Template集成百度统计

编辑器主要由5个核心区域组成:

  • 信息 –  定义模板的基础信息,如名称、描述、图标等
  • 字段 – 可视化配置界面,用于定义用户可填写的参数
  • 代码 – 使用GTM沙盒化JavaScript API,定义模板的具体行为
  • 权限 – 声明模板允许访问的全局变量、Cookie、外部资源等
  • 测试 – 用于验证模板在不同输入条件下是否正常运行

 

实战:开发一个「百度统计」GTM自定义模板

下面通过一个完整示例,演示如何将 百度统计(Baidu Tongji)基础代码封装为 Community Template。

Step 1 :创建模板

在GTM中点击「模板」——「新建」(自定义代码)。

创建一个新的 Tag Template。

 

Step 2 :设置信息(Info)

在「信息」中配置模板的基础属性:GTM自定义模板快速入门:用Community Template集成百度统计

  • 名称:给这个模板定给名称,我这里命名为Baidu Tongji Basic Tracking
  • 说明:增加一些描述性的文字,表明模板的用途
  • 图标:模板的logo(可选)
  • 是否勾选社区模板条款?
    • 发布到社区模板库:需要勾选并同意条款
    • 仅内部/客户使用:无需勾选,可直接导出模板文件交付

 

 

Step 3 :设置字段(Fields)

用于用于定义用户可填写的参数。

分析原始百度统计代码,看有哪些动态的参数是需要通过字段去传入:

<script>
var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?86e39c295c390b79e347ea7a9cd47fe3";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
</script>

唯一的动态参数是86e39c295c390b79e347ea7a9cd47fe3,看着像是网站ID,将其定为siteId,字段的设计思路是:

  • 字段名称:siteId
  • 字段类型:文本输入
  • 是否必填:是
  • 说明:Baidu Tracking ID

点击「添加字段」——「文本输入」,做如下设置:

GTM自定义模板快速入门:用Community Template集成百度统计

 

Step 4 :开发代码(Code)

根据百度统计官方基础代码,使用GTM提供的沙盒API进行改写:

GTM自定义模板快速入门:用Community Template集成百度统计

 

 

Step 5 :设置权限(Permissions)

用于声明模板允许访问的全局变量、Cookie、外部资源等

GTM会根据代码自动检测所需权限,你只需补充具体范围:

  • 访问全局变量:表示Cookie,百度统计跟踪代码会生成Cookie _hmt
  • 注入脚本:就是从第三方域名加载资源,设置为https://hm.baidu.com/* (权限越精确,模板越容易通过社区审核)

设置后如下:

GTM自定义模板快速入门:用Community Template集成百度统计

 

Step 6 :测试(Tests)

单元测试针对的是Google跟踪代码管理器的自定义模板,可验证模板的功能。

输入一个合法的siteId去运行:

GTM自定义模板快速入门:用Community Template集成百度统计

测试结果:

GTM自定义模板快速入门:用Community Template集成百度统计

 

Step 7 :保存

这是最终的效果:

GTM自定义模板快速入门:用Community Template集成百度统计

测试通过后即可保存模板,模板会出现在当前GTM容器的「模板」列表中。

 

使用模板安装百度统计

安装百度统计

在GTM中点击「代码」—「新建」—「选择一个代码类型以开始设置」——「Baidu Tongji Basic Tracking」,命名为“百度统计”,做如下设置:

GTM自定义模板快速入门:用Community Template集成百度统计

预览测试

GTM里预览测试,可以看到代码已经触发:

GTM自定义模板快速入门:用Community Template集成百度统计

在浏览器开发者工具里的网络里可以看到发送给百度的请求:

GTM自定义模板快速入门:用Community Template集成百度统计

还可以在百度统计的实时报告里验证:GTM自定义模板快速入门:用Community Template集成百度统计

数据正常发送过去。

 

社区模板库

自定义模板不仅可以内部使用,也可以发布到 GTM Community Gallery。

发布流程

  • 将模板代码托管到GitHub
  • 提交模板到Community Gallery
  • 等待Google官方审核(审核时间不固定,通常数周~数月)

 

参考资料


有疑问可以在底部留言
喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 可以获取到表单里用户填写的内容吗
    Oscar2020-03-02 16:02 回复 Mac OS X | Chrome 80.0.3987.116
    • 通过数据层去传递
      GA小站2020-03-02 16:41 回复 Mac OS X | Chrome 80.0.3987.122
  2. 感谢站长分享,不过很多的代码都是好几年前的,有点过时了,有些运行会出错,能否更新到最新的代码呢
    glenlau2019-11-01 16:45 回复 Windows 10 | Chrome 78.0.3904.70
    • 所有代码均可运行,注意区分不同版本,不要搞混即可。
      GA小站2019-11-04 21:02 回复 Mac OS X | Chrome 78.0.3904.70