我正在将现有跟踪脚本从自定义实现迁移到GTM。
一个要求是在我们的部署过程中,现有脚本会自行禁用并让GTM跟踪。理论上,这可以通过检测GTM容器的版本并基于该数字禁用来完成。这样,只需在GTM中发布即可实现切换。
我没有找到关于gtm.js
的文档,但是通过解析缩小的脚本并检查Developer Console中的实时JS对象,到目前为止我唯一发现的是容器版本包含在顶部的注释中脚本如:
// Copyright 2012 Google Inc. All rights reserved.
// Container Version: 9
我尝试过的另一件事是遍历DOM并获取GTM <script>
标记但是如何获取脚本的内容(注释将在哪里)。
// using jQuery
$("script").filter(function(i, scr) {
var src = $(scr).attr('src') || '';
return src.indexOf('gtm.js?id=') >= 0;
});
这显然不太理想,因为底层的GTM实现可能会在瞬间发生变化,但它可能会一次性发挥作用。
如果有人有任何想法,请发信息