在WooCommerce中添加百度统计的方法很简单,直接在</head>代码之前添加百度统计的JS代码即可,一些主题和插件也提供了直接在后台添加统计代码的选项,直接把百度统计代码粘贴到对应的设置选项里面即可。
可是如果想使用百度统计的电商分析功能,需要网站管理员有一定的代码撰写能力,并且对WooCommerce有一定的了解。
根据百度统计的文档,电商分析代码需要添加在订单完成页面、百度统计异步JS代码之后。电商分析代码需要获取一些订单数据,如skuID、商品分类、价格、数量等,我们需要从WooCommerce订单中提取这些数据,添加到电商分析JS中。
获取百度电商分析需要的订单数据
以下代码是在订单完成页面使用的,所以我们可以直接使用$order_id变量。
$order = wc_get_order($order_id);
$items = $order->get_items();
$product_js = [];
foreach ($items as $item_id => $item_data) {
$_product = wc_get_product($item_data->get_data()[ 'product_id' ]);
$pro_cat_array = wp_get_post_terms($_product->ID, 'product_cat');
$sku = $sku = $_product->get_sku();
$qty = $item_data->get_quantity();
$pro_cat = implode(',', $pro_cat_array);
$product_name = $_product->get_name();
$pro_price = $item_data->get_data()[ 'total' ];
$product_js[] = [
'skuId' => $sku,
'category' => $pro_cat,
'skuName' => $product_name,
'Price' => $pro_price,
'Quantity' => $qty,
];
}
添加订单数据到百度电商分析代码中
获取了上面的订单数据之后,我们只需把数据添加到百度电商分析代码中即可,如下:
<script>
_hmt.push([
'_trackOrder', {
'orderId' : '<?= $order_id; ?>',
'orderTotal': '<?= $order->get_total(); ?>',
'item' : <?= json_encode($product_js); ?>,
},
]);
</script>
完成上面的代码之后,我们使用 woocommerce_thankyou
钩子把上面的JS代码添加到订单完成页面即可。