【问题标题】:Google Universal Analytics: push several sub-events in one impressions event (E-commerce)Google Universal Analytics:在一次展示事件中推送多个子事件(电子商务)
【发布时间】:2017-04-30 17:08:40
【问题描述】:

我正在尝试使用 Universal Analytics 在电子商务目录页面上实现产品展示 (https://developers.google.com/tag-manager/enhanced-ecommerce#product-impressions)。我遇到的问题具有实际性质,我想推送一个包含每个印象对象的事件,而不是针对正在显示的每个目录产品的事件,但情况并非如此:

目录列表中显示的每个产品最终都成为数据层中的一个印象对象,而不是一个包含所有信息的印象对象(例如 Google 自己的示例)。有没有办法将每个 productImpressions 事件嵌套到一个中,然后推送包含所有目录页面结果的那个对象?这是我目前实现的代码,用于推送到 dataLayer:

// Product View, triggered when product is viewed on any page:
function googleTagManagerProductViewDataLayerPush(productName, productSKU, productPrice,
     productBrand, productCategory, productVariant, productList, positionInList, regularProductPrice) {
 dataLayer.push({
     'event': 'productImpressions',
     'ecommerce': {
         'currencyCode': 'SEK',
         'impressions': [{
             'name': productName, 
             'id': productSKU,
             'price': productPrice,
             'brand': productBrand,
             'category': productCategory,
             'variant': productVariant,
             'list': productList,
             'position': positionInList,
             'metric1': regularProductPrice           
         },
         {
             'name': productName, 
             'id': productSKU,
             'price': productPrice,
             'brand': productBrand,
             'category': productCategory,
             'variant': productVariant,
             'list': productList,
             'position': positionInList,
             'metric1': regularProductPrice 
         }]
     }
 });
}

我为我的产品目录中的每个产品/项目调用此函数,例如搜索结果。我想我可以发送数组,但这不会动态地创建每个产品的对象,这些对象嵌套在我想要的一个 productImpressions 事件中。

有没有人知道如何解决这个问题?

【问题讨论】:

    标签: javascript google-analytics e-commerce google-tag-manager google-datalayer


    【解决方案1】:

    不确定为什么要为每个产品调用 dataLayer 推送。您需要首先创建一个包含所有产品的数组,然后使用所有产品调用 dataLayer.push。此外,我建议将您一次推送的产品数量限制为 10 或 20 个,否则请求可能会变得太大而可能无法发送。

    您似乎还推了两次相同的产品。

    【讨论】:

    • 看来我举的例子太直白了!我没有看到对象和数组之间的关系(以及显而易见的),但最终得到了正确的结果,我现在将所有对象推到一个 Impressions 数组中。谢谢,我将此标记为正确答案。
    猜你喜欢
    • 2020-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-08
    • 1970-01-01
    • 2018-11-26
    • 1970-01-01
    相关资源
    最近更新 更多