安装 google 标签管理器后如何修复网站性能?

How to fix websites performance after installing google tag manager?

我们的网站上有 google 标签管理器 运行ning。我过去常常将它和其他一些非紧急脚本放在页面加载 3.5 秒的 javascript "setTimeout" 内,这是我用来在许多性能测试工具上给出出色性能分数的技巧。但是,Google 优化也 运行ning 由于 setTimeout 的延迟而无法在我们的网站上验证 - 它仅在页面加载 运行 且没有计时器延迟时有效。

将 GTM 移出超时后,我们的性能分数从 90 左右下降到 20 到 40 之间。

我知道这可能是因为在 GTM 中加载了什么,但我无法不在其中加载其中的某些项目。

我想知道在这种情况下是否还有其他方法可以提高页面速度性能,在这种情况下我需要 GTM 并且 Google 优化页面加载。我们网站上的大多数其他性能项目都已经过优化,这就是为什么这次下降如此令人震惊。

我曾尝试将此 GTM 标签移至页脚并使用 window.onload 将其设置为加载,但没有成功。此外,它已经使用异步设置。

这是我现在设置的,但它会降低性能。

(function () {
            var e = document.createElement('script');
            e.async = true;
            e.src = 'https://www.googletagmanager.com/gtag/js?id=UA-###';
            var s = document.getElementsByTagName('script')[0];
            s.parentNode.insertBefore(e, s);

            window.dataLayer = window.dataLayer || [];

            function gtag() {
                dataLayer.push(arguments);
            }

            gtag('js', new Date());

            gtag('config', 'UA-###', {'optimize_id': 'GTM-###'});
        }());

您可以使用 GTM 在页面上利用各种触发器,并 link 对这些事件使用不同的标签。初始化 GTM 时启动页面视图触发器。 DOM 触发器在页面加载时启动,Window Loaded 触发器在所有资源加载时启动。您可以使用它们来推迟 non-time 关键标签、脚本和工具的启动。 support article.

中提供了有关这些触发器的更多详细信息