【问题标题】:Rails: How to embed Google Tag Manager for multiple environments?Rails:如何为多种环境嵌入 Google Tag Manager?
【发布时间】:2021-02-07 00:07:32
【问题描述】:

我对 Google 跟踪代码管理器 (GTM) 不是很熟悉,但有人要求我将其代码嵌入到 Rails 应用程序中。通常,与其他基本标签一样,我们将每个环境的不同键放入 ENV 变量中,而周围的 javascript“标签”保持不变。

但是,启用GTM Environments 后,该标签有一些额外的查询字符串,这些字符串在标签的“实时”(阅读:生产)版本中不存在。请参阅下面的差异(深紫色仅在自定义暂存标签中,但在实时(生产)标签中缺失。

显然,我可以将查询字符串放入它自己的 ENV var 中并忽略它(以及生产中的一些周围语法 +'…' 但这让我想知道我们是否可能以错误的方式接近 GTM。毕竟这是,专为不同的环境而设计,那么为什么他们会在文档中不遗余力地强调:

环境功能专为非生产环境而设计 环境。为确保最佳性能,您应该安装 实时/生产网站上的标准跟踪代码管理器容器 sn-p。

迫使我们管理 3 个不同的标签用于开发、登台和生产。这不是跟踪代码管理器应该做的吗?!?

无论如何,寻找最佳做法。谢谢!

【问题讨论】:

    标签: ruby-on-rails heroku environment-variables google-tag-manager


    【解决方案1】:

    我也在为同样的事情苦苦挣扎。它确实看起来比它需要的更复杂。

    在我看来,GTM 的环境旨在测试您在 GTM 中对标签的更改,而不是将不同标签配置与不同测试环境相匹配的一种方式。它们还要求您更改 HTML 中的代码 sn-p 以选择所需的 GTM 环境,这似乎不太理想。

    我希望 GTM 变量能够根据环境而有所不同......这样您就可以为每个环境使用不同的 Google Analytics(分析)跟踪 ID。但是,他们没有。

    这篇 2016 年的文章很好地涵盖了几个选项:https://www.bounteous.com/insights/2016/05/16/deploying-google-tag-manager-multiple-website-environments/

    根据那篇文章,在我看来,GTM 查找表可能是最好的选择......但是,现在它们不是在 Heroku 中存储不同的 ENV 变量,而是嵌入在 GTM 中。

    更新:我使用查找表实现了它,它工作得很好……但是,我不得不删除我的旧 GA 属性并创建新的 GA4 属性。旧的 GA 标记不允许我选择查找表类型的变量。它只允许预定义的静态属性 id 类型之一。一旦我切换到“Google Analytics:GA4 配置”标签,它就允许我使用查找表作为 ID。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-03-23
      • 2018-08-31
      • 2014-07-03
      • 1970-01-01
      • 1970-01-01
      • 2017-04-19
      相关资源
      最近更新 更多