【发布时间】:2019-05-29 14:17:28
【问题描述】:
当客户完成订单时,步骤如下:
- 我们将根据每个产品的类别获取权重因子。 (在查找表中)
- 每个产品,将使用价格、数量和重量系数进行计算
- 所有产品单独计算的总和将是使用转换像素传递给 Google Ads 的新转换值。
我们希望使用更能代表实际销售额的不同数字来代替我们网站报告的收入。我们希望使用新的“实际”值,以便能够在 Google Ads 中使用自动出价策略:例如:手机的接受率为 25%,因此如果售出 4 部 500 欧元的手机,其中 3 部可能会被取消。如果每次转化价值为 125 欧元 - 这样 4 次销售将共同产生 500 欧元的收入,并且可以很好地估计实际收入而不是理论收入。
4*500 - 3*500 = 500 = 4*125
我们希望在客户网站上实施新的 google 像素,以便将新的转化价值传达给 Google Ads。但是为了实现这一点,我们需要做几件事:
-当有人在网站上结账时,购物篮交易产品的完整概述。这主要包含 SKU、名称、价格、数量 - 描述每个类别的权重因子的表格 - 一段 javascript 读取购物篮并根据每个产品的价格数量权重系数计算新的总转化价值 - 一个 Google Ads 转化像素,我们在其中解析新的转化值
在网站中,当发生转换时,我们有一段代码:
下面这个数组被称为 transactionProducts:
transactionProducts: [
{ Sku: 'dd44', Name: 'tshirt', Category: 'apparel1', Price: 1.99, Quantity: 2, },
{ Sku: 'AA1243544', Name: 'socks', Category: 'apparel2', Price: 9.99, Quantity: 3, }
]
有一个查找表,其中服饰1 转换为 0.5,服饰2 转换为 0.2 值;所以最后我的最终转化价值应该是这样的;
2*1.99*0.5 + 3*9.99*0.2 = 1.99 + 5.994 = 7.984
我想创建一段 javascript 来计算数组中每个产品的产品总和。以下是我到目前为止所得到的,但由于我不是 javascript 专业人士,因此我需要一些帮助。
function() {
var sum = 0 for (var i = 0; i < {{VAR - transactionProducts}}.length; i++){
sum += {{VAR - transactionProducts}}[i]['quantity']*{{VAR - transactionProducts}}[i]['price']*{{VAR - Datalayer - Pricefactor Category LookupTable}}
};
return sum;
}
我收到响应 16.975。所以有一个错误的地方。计算后我注意到我使用 0.5 作为所有计算的因子,如下所示;
2*1.99*0.5 + 3*9.99*0.5 = 1.99 + 14.985 = 16.975
不知道这里出了什么问题,因为我的 javascript 知识不是那么广泛。我最好的猜测是它与查找表中的变量有关。输出因子保持不变('apparel1'-->0.5),但它必须根据我们尝试进行的计算而波动。
查找表中的输入函数是这样的;
function() {
for (var i = 0; i < {{VAR - transactionProducts}}.length; i++){
var cat = {{VAR - transactionProducts}}[i]['category']
return cat
};
}
情况就是这样。
【问题讨论】:
标签: javascript arrays google-tag-manager lookup-tables