首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >签出后加载页面后不执行window.criteo_q.push

签出后加载页面后不执行window.criteo_q.push
EN

Stack Overflow用户
提问于 2020-06-23 04:02:44
回答 2查看 190关注 0票数 0

我将这段代码从索引体移动到我的html编辑器中,用于转换/谢谢页面。此Criteo Javascript应将订单详细信息推送到他们的数据库。哪里出了问题?

代码语言:javascript
复制
<!-- Conversionpage htmlblock in js test -->

<body onload="fireConversion()">

<script type="text/javascript" src="//static.criteo.net/js/ld/ld.js" async="true"></script>

<script type="text/javascript">
function fireConversion() {
 var order_info = JSON.parse(ORDER_JSON).order_rows;
 var basketproducts = [];
  for(var i=0;i<order_info.length;i++) {
    basketproducts.push( { id: order_info[i].product_id, price: order_info[i].price, quantity: order_info[i].count});
  }
 var orderid = '[OrderNumber]';
 window.criteo_q = window.criteo_q || [];
 var deviceType = /iPad/.test(navigator.userAgent) ? "t" : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(navigator.userAgent) ? "m" : "d";

 window.criteo_q.push( { event: "setAccount", account: 52999 },  { event: "setSiteType", type: deviceType },  { event: "setEmail", email: "" } , { event: "trackTransaction", id: orderid , item: basketproducts });
</script>
}
EN

回答 2

Stack Overflow用户

发布于 2020-06-23 04:43:38

我想你把最后两行换了。试试这个:

代码语言:javascript
复制
<!-- Conversionpage htmlblock in js test -->

<body onload="fireConversion()">

<script type="text/javascript" src="//static.criteo.net/js/ld/ld.js" async="true"></script>

<script type="text/javascript">
function fireConversion() {
    var order_info = JSON.parse(ORDER_JSON).order_rows;
    var basketproducts = [];
    for (var i = 0; i < order_info.length; i++) {
        basketproducts.push({ id: order_info[i].product_id, price: order_info[i].price, quantity: order_info[i].count });
    }
    var orderid = '[OrderNumber]';
    window.criteo_q = window.criteo_q || [];
    var deviceType = /iPad/.test(navigator.userAgent) ? 't' : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(
        navigator.userAgent) ? 'm' : 'd';

    window.criteo_q.push({ event: 'setAccount', account: 52999 }, { event: 'setSiteType', type: deviceType },
        { event: 'setEmail', email: '' }, { event: 'trackTransaction', id: orderid, item: basketproducts });
}
</script>
票数 0
EN

Stack Overflow用户

发布于 2020-06-24 17:31:44

我在此期间解决了这个问题。

我将以下代码与转换页的条件放在索引体中。

变量orderid的定义是由转换页体html编辑器中的小脚本定义的。

索引体html中的代码:

代码语言:javascript
复制
<script type="text/javascript" src="//static.criteo.net/js/ld/ld.js" async="true"></script>
<script type="text/javascript">
if (document.body.className == "OrderPage ps-German")
{
  var order_info = JSON.parse(ORDER_JSON).order_rows;
  var basketproducts = [];
  for (var i = 0; i < order_info.length; i++) {
     basketproducts.push({ id: order_info[i].product_id, price: order_info[i].price, quantity: order_info[i].count });
  }
  window.criteo_q = window.criteo_q || [];
  var deviceType = /iPad/.test(navigator.userAgent) ? 't' : /Mobile|iP(hone|od)|Android|BlackBerry|IEMobile|Silk/.test(
    navigator.userAgent) ? 'm' : 'd';
  window.criteo_q.push({ event: 'setAccount', account: 59999 }, { event: 'setSiteType', type: deviceType },
    { event: 'setEmail', email: '' }, { event: 'trackTransaction', id: orderid, item: basketproducts });
}
</script>

转换页面中的代码:

代码语言:javascript
复制
<script>
var orderid = '[OrderNumber]';
</script>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62522588

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档