gatsby-plugin-google-tagmanager
轻松为您的Gatsby网站添加Google Tagmanager。
安装
npm install gatsby-plugin-google-tagmanager
如何使用
// In your gatsby-config.js
plugins: [
{
resolve: "gatsby-plugin-google-tagmanager",
options: {
id: "YOUR_GOOGLE_TAGMANAGER_ID",
// Include GTM in development.
//
// Defaults to false meaning GTM will only be loaded in production.
includeInDevelopment: false,
// datalayer to be set before GTM is loaded
// should be an object or a function that is executed in the browser
//
// Defaults to null
defaultDataLayer: { platform: "gatsby" },
// Specify optional GTM environment details.
gtmAuth: "YOUR_GOOGLE_TAGMANAGER_ENVIRONMENT_AUTH_STRING",
gtmPreview: "YOUR_GOOGLE_TAGMANAGER_ENVIRONMENT_PREVIEW_NAME",
dataLayerName: "YOUR_DATA_LAYER_NAME",
// Name of the event that is triggered
// on every Gatsby route change.
//
// Defaults to gatsby-route-change
routeChangeEventName: "YOUR_ROUTE_CHANGE_EVENT_NAME",
// Defaults to false
enableWebVitalsTracking: true,
// Defaults to https://#
selfHostedOrigin: "YOUR_SELF_HOSTED_ORIGIN",
// Defaults to gtm.js
selfHostedPath: "YOUR_SELF_HOSTED_PATH",
},
},
]如果您想在运行时使用数据作为默认的dataLayer,可以通过将其定义为一个函数来实现。
// In your gatsby-config.js
plugins: [
{
resolve: "gatsby-plugin-google-tagmanager",
options: {
// datalayer to be set before GTM is loaded
// should be a stringified object or object
//
// Defaults to null
defaultDataLayer: function () {
return {
pageType: window.pageType,
}
},
},
},
]此插件仅初始化tag manager的容器。如果您想使用Google Analytics,请同时添加gatsby-plugin-google-analytics。
如果您想将分析使用与容器内的任何内容(例如,像OneTrust这样的Cookie同意管理器)链接起来,您将需要确保tag manager脚本在您的gatsby-config.js中早于分析脚本。
跟踪路由
此插件将在每次Gatsby应用程序中的路由更改时触发一个名为gatsby-route-change(或在gatsby-config.js中配置的routeChangeEventName)的新事件。要在Google Tag Manager中记录这一点,我们需要在所需标签中添加一个触发器来监听该事件。
- 访问Google Tag Manager控制台并点击您的网站工作区。
- 通过右侧菜单的“标签”选项卡导航到所需的标签。
- 在“触发”下,单击铅笔图标,然后单击“+”按钮添加一个新触发器。
- 在“选择触发器”窗口中,再次单击“+”按钮。
- 通过单击铅笔按钮并选择“自定义事件”来选择触发器类型。对于事件名称,输入
gatsby-route-change(或在gatsby-config.js中配置的routeChangeEventName)。
此标签现在将捕获Gatsby中的每一次路由更改,您可以根据需要添加Google标签服务。
跟踪核心Web指标
优化用户体验质量是任何网站在网络上长期成功的关键。捕获真实用户指标(RUM)可以帮助您了解用户/客户的体验。通过将enableWebVitalsTracking设置为true,GTM将收到带有其值的“core-web-vitals”事件。
您可以将此数据保存在Google Analytics或任何您选择的数据库中。
我们发送三个指标
- 最大内容绘制(LCP):衡量加载性能。为了提供良好的用户体验,LCP应在页面开始加载后的2.5秒内完成。
- 首次输入延迟(FID):衡量交互性。为了提供良好的用户体验,页面的FID应为100毫秒或更少。
- 累积布局偏移(CLS):衡量视觉稳定性。为了提供良好的用户体验,页面的CLS应保持在0.1或更低。
注意
开箱即用,此插件将在初始页面/应用加载时加载Google Tag Manager。您需要根据应用中的更改来触发标签。请参阅上面的“跟踪路由”部分以获取示例。