如何在自定义 html 标签中设置 google 标签管理器常量变量的值?

How do a set the value of a google tag manager constant variable in a custom html tag?

<script>
  {{MyVarCustomGTMConstant}} = 'Value Set by me';
</script>

在上面的代码中,我在 Google 跟踪代码管理器中设置了一个变量作为类型常量。

这是我可以将全局变量传递回稍后触发的标记的正确方法吗?

正确的方法是:

1:创建常量变量。我们称它为 Constant X,值为 Value Set by me.

2:在要使用常量的标签中,用{{Constant X}}引用常量。

例如,如果您有一个需要引用常量的自定义 HTML 标签,您可以将标签定义为:

<script>
  alert("{{Constant X}}");
</script>

根据定义,常量是程序在正常执行期间无法更改的值。因此,您不能在自定义 HTML 标签中更改它。

如果需要在执行过程中设置变量,可以使用全局JS变量或dataLayer变量代替。

有用的链接:

https://en.wikipedia.org/wiki/Constant_(computer_programming) https://www.simoahava.com/analytics/variable-guide-google-tag-manager/#10-constant

我不确定您为什么要在 GTM 标记内设置 GTM 变量的值,但如果这是您的目标,那么您需要将 GTM 变量更改为一个 dataLayer 变量,然后将您的值推送到 GTM 标记中的 dataLayer。不过,多一点上下文会有所帮助。

所以你的 MyVarCustomGTMConstant 变量看起来像这样

变量类型:数据层变量

数据层变量名称:MyVarCustomGTMConstant

然后,对于您的自定义 HTML GTM 标签:

<script>
var dataLayer = window.dataLayer || [];
dataLayer.push({'MyVarCustomGTMConstant':'your new value here'});
</script>

这样您就可以在 GTM 中设置 GTM 变量的值。现在,如果您真的想使用 dataLayer 推送,您还需要发送一个事件来创建触发器。所以上面的脚本看起来更像这样:

<script>
var dataLayer = window.dataLayer || [];
dataLayer.push({
   'event':'friendly-event-name',
   'MyVarCustomGTMConstant':'your new value here'
});
</script>