【问题标题】:Defining Google Tag Manager Data Layer variables定义 Google 跟踪代码管理器数据层变量
【发布时间】:2017-11-22 15:08:43
【问题描述】:

我对 Google 跟踪代码管理器 (GTM) 和数据层有疑问:

假设分析团队要求开发人员在Data Layer 中推送一个名为“test”的事件,该事件具有以下结构:

{
product_id : '1234',
category: 'toys' 
}

假设我有一个标签需要将这些变量发送给第三方提供商。

根据我对 GTM 工作流程的理解,我必须创建两个单独的数据层变量,一个用于product_id,一个用于category

对于具有大量变量的事件,这是一个相当手动/冗长/容易出错的过程,我还担心如果另一个变量被另一个事件称为“类别”,可能会造成混淆。

所以我的问题是:

我可以在 GTM 中定义名为“test”的“父”级变量(事件本身的名称),然后创建 test.product_idtest.category 变量吗?

谢谢

【问题讨论】:

    标签: google-tag-manager google-datalayer


    【解决方案1】:

    适当的数据治理应该规定您的数据层键定义良好,这样您就不会出现冗余和歧义。此外,如果您绝对需要将特定名称(如 category)用于不同的事件,则使用 event 键至关重要。在该示例中,您的数据层变量可用于任何事件,event 本身将确保该键将正确的值放入正确的事件标记中。

    如果您确实需要使用嵌套数据结构,请确保您的数据层变量使用正确的点表示法,如您所指出的(即test.0.category)。请注意,以几乎相同的方式,可以访问增强的电子商务数据层参数。

    【讨论】:

    • 感谢您的回答。当您说use of the event key is vital 时,您的意思是在 GTM 中创建变量时?
    • 当您将数据推送到数据层时,最好也始终推送event,例如。 dataLayer.push({'event': 'test', 'category': 'chicken'})。这样您就可以确定当您想要触发代码并使用正确的 category 值时,您可以使用 test 事件作为触发器来执行此操作。
    • 太好了,这就是我正在做的,谢谢。关于使用嵌套数据结构,是不是类似于dataLayer.push({'event': 'animal', 'animal':[{'name': 'chicken'}, {'habitat':'farm'}]),然后变量将被定义为animal.nameanimal.farm
    • 它更像dataLayer.push({'event': 'animal', 'animal':[{'name': 'chicken', 'habitat':'farm'}]),然后在 GTM 中将它们作为数据层变量访问,您可以使用 animal.0.nameanimal.0.habitat
    • 谢谢,我认为这是最好的方法。这样我就可以在 GTM 中只定义一个变量animal,然后从标签中访问单个元素。
    猜你喜欢
    • 1970-01-01
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 2022-01-13
    • 1970-01-01
    • 2017-12-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多