返回

gtag-function 发送事件到 Google Analytics 的完整指南:解决常见问题

vue.js

通过 gtag-function 向 Google Analytics 发送事件

问题:无法使用 gtag-function 向 Google Analytics 发送事件

如果您遇到此问题,可能是由于缺少以下配置:

解决方案

要解决此问题,请按照以下步骤操作:

  1. 更新 gtag 配置: 在 index.html 中,授予“analytics_storage”权限:
  gtag('config', 'G-XXXXXXX', {
    'send_page_view': false,
    'allow_google_signals': false
  });
  1. 授予“analytics_storage”权限: 在用户授予发送事件的权限后,运行以下代码:
  gtag('consent', 'default', {
    'ad_storage': 'denied',
    'ad_user_data': 'denied',
    'ad_personalization': 'denied',
    'analytics_storage': 'granted'
  });
  1. 发送事件: 您现在可以发送事件了:
  gtag('event', 'set_consent', {
    param1: 'consent given',
  });

其他提示

  • 确保正确安装了 gtag-function。
  • 检查 Google Analytics 中的事件过滤器,以确保没有阻止事件。
  • 确保您发送事件时用户已在网站上。
  • 验证您的 Google Analytics 跟踪 ID 是否正确。

示例代码

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXX"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}

  gtag('config', 'G-XXXXXXX', {
    'send_page_view': false,
    'allow_google_signals': false
  });

  gtag('consent', 'default', {
    'ad_storage': 'denied',
    'ad_user_data': 'denied',
    'ad_personalization': 'denied',
    'analytics_storage': 'denied'
  });
</script>
// 授予 "analytics_storage" 权限
gtag('consent', 'default', {
  'ad_storage': 'denied',
  'ad_user_data': 'denied',
  'ad_personalization': 'denied',
  'analytics_storage': 'granted'
});

// 发送事件
gtag('event', 'set_consent', {
  param1: 'consent given',
});

常见问题解答

  1. 为什么我需要授予“analytics_storage”权限?

    “analytics_storage”权限是发送事件到 Google Analytics 所必需的。

  2. 如何检查是否已授予权限?

    您可以使用 gtag('get', 'consent_info') 命令检查当前的同意状态。

  3. 为什么我的事件未显示在 Google Analytics 中?

    确保已正确配置跟踪 ID,并且用户在发送事件时已在网站上。

  4. 如何调试 gtag-function?

    在浏览器的开发者工具中,检查控制台中是否有错误消息。

  5. 是否有其他方法可以向 Google Analytics 发送事件?

    是的,您可以使用 Google Analytics API 或 Universal Analytics 代码。