我正在尝试使用谷歌标签管理器和电子商务标签(purchase.actionField.revenue)在谷歌广告控制台中设置转化价值。
如果我在转换页面中推送一个 dataLayer 标签,效果很好。但是如果我在转换页面中推送两个 dataLayer 标签,则只有最后一个 dataLayer 被反映到谷歌广告控制台。
我想知道如何从 dataLayer 变量中获取(或计算)总收入并将其设置为谷歌广告控制台中的转换值。
我已经为谷歌分析设置了谷歌标签管理器和电子商务标签。此外,我正在提供谷歌广告(gsn)并获得转化价值,其中每次转化仅包含一个 dataLayer 变量。
DOMReady 时触发谷歌广告的转化跟踪代码(这是测试目的)。转化价值是 {{conversion_value}},它被定义为自定义 javascript。
推送数据层
<script type="text/javascript">
dataLayer.push({"ecommerce":{"purchase":{"actionField":{"id":"1234567890","affiliation":"Online Store","revenue":45000,"tax":0,"shipping":0},"products":[{"name":"product_1","id":3594,"price":25000,"brand":"brand_1","quantity":1},{"name":"product_2","id":4525,"price":20000,"brand":"brand_1","quantity":1}]}}});
dataLayer.push({"ecommerce":{"purchase":{"actionField":{"id":"2345678901","affiliation":"Online Store","revenue":20000,"tax":0,"shipping":0},"products":[{"name":"product_3","id":3083,"price":10000,"brand":"brand_2","quantity":2}]}}});
</script>
转换值(自定义 javascript)
function(){
var result_str = google_tag_manager['GTM-XXXXXXXX'].dataLayer.get('ecommerce')['purchase']['actionField']['revenue'];
var result = parseInt(result_str, 10);
return result_str;
}
我想将转化价值设置为谷歌广告控制台中的广告系列标签作为总收入。
上面的代码,我得到了 20000 作为转换值。但我想获得 65000 作为转换价值。因为65000是一次转化的收益。