我希望我使用正确的术语,因为我是JS的初学者,所以如果我使用的术语不正确,请更正我。我正在通过sku
从我的网站收集dataLayer
个数字,并将其转换为一个名为DL - Product Detail - SKUs
的变量。当该变量遇到该变量时,它将被放入一个字符串中。某些产品可能只带有一个产品sku
字符串(sku1
),而其他页面则具有多个产品sku
字符串(sku1
,sku2
,{{ 1}})。我现在想做的是:将它们创建为单个变量,如下所示:
老实说,我什至不知道从哪里开始。因此,任何建议将不胜感激。我有这样的事情,但我不认为这是我需要走的正确方向。
仅供参考,sku3
使用{{...}}
从dataLayer
调用SKU字符串。
Google Tag Manager
是我需要逐个调出SKU的地方。
_ltk.Activity.AddProductBrowse(productskus);
我不太确定如何举一个好例子,但这也许会有帮助
这是穿过的对象:
(function() {
var productskus = "{{DL - Product Details - SKUs}}";
return productskus('|');
_ltk.Activity.AddProductBrowse(productskus);
_ltk.Activity.Submit();
});
所以我创建了一个变量,将 object
{
id: '24513',
model: 'Government',
skus: '965000050,965000070,965000146,965000147,965000185,965000244',
}
调用为字符串。
skus
从该var sku = ('965000050,965000070,965000146,965000147,965000185,965000244')
变量开始,由于缺少正确的术语,我现在需要每个项目都是它自己的sku
。
答案 0 :(得分:0)
我想跟进以防其他任何人遇到这样的问题。
我必须创建另一个GTM变量来拆分SKU字符串:
function(){
var productSKUs = {{DL - Product Details - SKUs}}.split(',');
return productSKUs
}
我必须更新自定义HTML标记以调用上面创建的split sku变量,并将其放入for循环中以调用每个不同的sku:
function() {
// Repeat this function for every item purchased -> done.
var productsku = {{JS - Split - Skus}};
for (var i = 0; i < productsku.length; i++) {
_ltk.Activity.AddProductBrowse(productsku[i]);
}
运行后,我在网络标签中看到了我需要的数据!
感谢所有帮助。