Google tag manage集成第三方pixel(snapchat)

本文主要讲一下在Shopify中使用GTM接入snapchat pixel的过程

进入跟踪代码管理器页面

选择"变量",点击新建配置变量,

这儿配置一个常量,在输入框中填写从snapchat管理平台copy出来的snapchat pixel ID。

然后点击"代码",创建一个snapchat pageView事件

选择Snap Pixel模版后,点击下图画红框的图标,选择刚刚创建的snapchat pixel ID,填充下图中的pixel ID输入框

点击保存,这样就创建好了snapchat pixel的pageView事件

点击"预览",如下图所示:

然后接下来创建viewcontent事件,首先,我们先新建几个数据层变量

这些变量需要在电商网站定义,比如像这样

php 复制代码
 // 注意:代码仅在Shopify中生效,其他建站平台请参考平台文档
 // 判断页面在商品详情页
 {% if request.page_type == 'product' %}
   <script>
    var gloabalProductsInfo = {{product | json}};
   var productDetails = gloabalProductsInfo.variants[0];
   // 定义数据层变量以及view_item事件,方便在GTM事件中使用
     dataLayer.push({ ecommerce: null }); // Clear the previous ecommerce object.
    dataLayer.push({
      event: "view_item",
      ecommerce: {
          currency: '{{ shop.currency }}',
          item_name: productDetails.name,
          item_category: '{{product.type}}',
          item_id: productDetails.id,
          price: productDetails.price,
          sku: productDetails.sku,
        item_ids: gloabalProductsInfo.variants.map(a => a.id)
      }
    });
   </script>
   <script>
  var addcartBtn = document.querySelector('[data-add-to-cart]');
    if (addcartBtn) {
        document.querySelector('[data-add-to-cart]').addEventListener('click', function () {
            dataLayer.push({ ecommerce: null });
            // 定义add_to_cart事件,方便在GTM中创建自定义事件来调用它
            dataLayer.push({
                event: "add_to_cart",
                ecommerce: {
                    item_name: productDetails.name,
                    item_id: productDetails.id,
                    item_category: '{{product.type}}',
                    price: productDetails.price,
                    sku: productDetails.sku,
                    currency: '{{shop.currency}}',
                    item_ids: gloabalProductsInfo.variants.map(a => a.id)
                }
            });
        });
    }
</script>
 {% endif %}}
 // 购买成功
 {% if first_time_accessed %}
 <!-- 放GTM初始化代码 -->
 {% assign itemIds = checkout.line_items | map: "variant_id" %};
 dataLayer.push({ecommerce: null});
 dataLayer.push({
    event: "purchase",
    ecommerce: {
            price: {{ order.total_price }}/100,
            'transaction_id':"{{ order.order_number }}",
            'user_email': "{{ order.email }}",
            'item_ids': '{{ itemIds | join: ", " }}',
            currency: '{{shop.currency}}'
            // 、、、、、、、、、、
    }
});
 {% endif %}

上述代码中,dataLayer.push的信息是为了方便在GTM中使用,event代表自定义事件名,在GTM中可以选择在网站中自定义事件名来触发pixel的各种事件,比如创建名为view_item的触发器

下图就是viewcontent事件的详细信息

下图是addcart事件的详细信息,其中addCart自定义事件触发器创建流程和viewcontent事件一样

下图是purchase事件的详细信息

自此,GTM集成snapchat pixel过程在这里就介绍完成了

参考文档:

GTM快速入门指南

用户定义的网页变量类型

相关推荐
周杰伦_Jay33 分钟前
【 Vue前端技术详细解析】目录结构与数据传递
前端·javascript·vue.js
A24207349301 小时前
JavaScript学习
前端·javascript·学习
奋斗吧程序媛1 小时前
动态组件驱动的标签页架构(简单来说:一个页面包含许多Tabs页面,这些Tabs页面渲染逻辑)
前端·javascript·vue.js
Felix_Fly1 小时前
用 Vue3 + naive-cron 开发 Cron 表达式工具:从 0 到 1 实现生成 + 反解析
前端·javascript·vue.js·vue·cron·naive
开发者小天1 小时前
react中useReducer的使用
前端·javascript·react.js
小虎牙0071 小时前
关于Android Compose架构的思考
android·前端·mvvm
Calm5502 小时前
ele表单未输入值提示为英文
前端
爪洼守门员3 小时前
前端性能优化
开发语言·前端·javascript·笔记·性能优化
TOYOAUTOMATON3 小时前
GTH系列模组介绍
前端·目标检测·自动化