Google 跟踪代码管理器包括旧版 Analytics (GA) 和 Universal Analytics (UA) 脚本

问题描述 投票:0回答:3

我正在为我们的在线商店提供更好的性能和加载时间,并且我们在其上使用 Google 跟踪代码管理器。但包含 google 标签管理器的脚本默认还会加载 Google Analytics(旧版

ga.js
)和通用 Google Analytics(
analytics.js
)。我不需要两者,但如果有必要,我只需要 Universal Google Analytics。

那么为什么谷歌标签管理器包含这两个脚本呢?

作为编码简历,这是标签管理器包含的内容:

<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=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-XXXX');</script>

-

在网络选项卡上,会出现包含内容,在其之后,它会自动加载两个脚本:

Google Tag Manager automatic inclusion

-

如果我分析 Google 跟踪代码管理器脚本 (

gtm.js
),我会看到以下内容:

else if (!a) {
    var N = c["60"] ? ".google-analytics.com/u/ga_debug.js" : ".google-analytics.com/ga.js";
    a = !0;
    u(x("https://ssl", "http://www", N, r), O, c["66"])
}

还有这个:

if (!a) {
    var M = b["60"] ? "u/analytics_debug.js" : "analytics.js";
    b[""] && !b["60"] && (M = "internal/" + M);
    a = !0;
    bb(x("https:", "http:", "//www.google-analytics.com/" + M, d && d.forceSSL), function() {
        var a = $a();
        a && a.loaded ||
            b["66"]();
    }, b["66"])
}

-

所以谷歌标签管理器包含这两个脚本。我可以假设通用 Google Analytics,但遗留的

ga.js
脚本为什么???

我可以避免包含两个或仅包含旧版

ga.js
脚本吗?

谢谢你。

编辑

我开始悬赏,因为我需要解释为什么会发生这种情况,以及是否有可能避免这种行为的方法。

javascript google-analytics google-tag-manager universal-analytics
3个回答
6
投票

GTM 不会自动加载这些脚本。

您在已发布容器中定义的标签会加载相关脚本,以便在之前触发的标签尚未加载时触发。

例如,第一个标签仅在触发时加载经典 GA,而最后一个标签在触发时加载 UA,并在每次页面加载时触发: enter image description here

您可以通过将客户端置于预览的调试模式来确定实际触发的标签,如果脚本仍然令人困惑,您可以导出容器并查看其定义(或自定义 JS)以查找与脚本相关的标签:

enter image description here

            "tagId": "7",
            "name": "classic track event",
            "type": "ga",

            "tagId": "1",
            "name": "page track",
            "type": "ua",

3
投票

据我测试,我最好的假设是,如果您的容器需要它,它只会加载

ga.js

我能找到的唯一情况是当您使用“Google Analytics classic”标签(这是最旧的版本)而不是“Universal Analytics”标签时。

我也尝试过创建和使用 dataLayer 变量 v1,但似乎不需要

ga.js

如果您能找到更多案例,请分享它们,因为这实际上非常有趣,即使 GTM 对网站性能几乎没有影响,也值得记住。


0
投票

在 WordPress 中,您可以安装以下插件来停用它们:

GTM4WP

配置插件时它位于安全部分。

然后您可以停用:Google Analytics 标记(经典、旧版)

这就是我能做出的贡献。问候

© www.soinside.com 2019 - 2024. All rights reserved.