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快速入门指南

用户定义的网页变量类型

相关推荐
前端小趴菜0527 分钟前
React-React.memo-props比较机制
前端·javascript·react.js
摸鱼仙人~1 小时前
styled-components:现代React样式解决方案
前端·react.js·前端框架
sasaraku.2 小时前
serviceWorker缓存资源
前端
RadiumAg3 小时前
记一道有趣的面试题
前端·javascript
yangzhi_emo3 小时前
ES6笔记2
开发语言·前端·javascript
yanlele3 小时前
我用爬虫抓取了 25 年 5 月掘金热门面试文章
前端·javascript·面试
中微子5 小时前
React状态管理最佳实践
前端
烛阴5 小时前
void 0 的奥秘:解锁 JavaScript 中 undefined 的正确打开方式
前端·javascript
中微子5 小时前
JavaScript 事件与 React 合成事件完全指南:从入门到精通
前端
Hexene...5 小时前
【前端Vue】如何实现echarts图表根据父元素宽度自适应大小
前端·vue.js·echarts