在我们的网站上,我们在页脚闭合 body 标签之前使用脚本标记来引入第三方服务,例如 Lotame、Peer39 和 Google Analytics,以避免阻塞页面渲染。我们尽可能将脚本设置为延迟或异步加载,但是有些服务无法与异步加载一起使用,必须作为普通标记留下。我们还向其他分析服务发送有关每个页面内容的大量数据,这意味着我们选择将其包含在页脚中。
我们现在正在考虑使用 Google Tag Manager 代替我们包含外部脚本。为了实施 GTM,Google 建议您放置他们的代码块。
我们现在正在考虑使用 Google Tag Manager 代替我们包含外部脚本。为了实施 GTM,Google 建议您放置他们的代码块。
<!-- Google Tag Manager -->
<noscript>
<iframe src="//www.googletagmanager.com/ns.html?id=GTM-XXXXXX"
height="0" width="0" style="display:none;visibility:hidden"></iframe>
</noscript>
<script>(function (w, d, s, l, i) {
w[l] = w[l] || [];
w[l].push({
'gtm.start': new Date().getTime(), event: 'gtm.js'
});
var f = d.getElementsByTagName(s)[0],
j = d.createElement(s), dl = l != 'dataLayer' ? '&l=' + l : '';
j.async = true;
j.src =
'//www.googletagmanager.com/gtm.js?id=' + i + dl;
f.parentNode.insertBefore(j, f);
})(window, document, 'script', 'dataLayer', 'GTM-XXXXXX');</script>
<!-- End Google Tag Manager -->
将GTM代码放在body标签之后,这将是GTM开始请求标签的位置。我理解这个位置是推荐的,以避免IE6和IE7出现问题。
GTM没有提供任何指定脚本加载顺序的方式。我担心如果遵循这个建议,会将一些同步脚本文件的请求从页脚移动到页眉,而它们在页脚是安全的,不会影响主要内容。
我是否担心过度了?创建第二个GTM容器来管理页脚脚本似乎太过复杂。如果我不支持IE7,将GTM代码块放在页脚是否有意义,考虑到我当前的一些脚本在页眉中?