我做营销,我需要知道一个客户是否购买了一个特定的产品,以便我可以再销售他们。
所以,“展示这个广告,除了那些访问过订单接收页面的人”对我不起作用,因为我需要重新销售几种产品个性化的营销活动。
我能够在本教程之后的“添加到购物车/结帐”页面中添加SKU:https://www.themelocation.com/how-to-add-sku-to-product-url-in-woocommerce/。
但是SKU不会传播到感谢信页面(订单接收),我只接收以下参数: order-received/286/?key=wc_order_5b5f46b2ec536
(286是订单编号,而不是SKU)。
这就是我需要的结果: order-received/286/?key=wc_order_5b5f46b2ec536?SKU=PRODUCT-SKU
有办法做到这一点吗?在订单接收页面中显示SKU?
谢谢!
发布于 2018-07-30 18:06:56
哇哦..。我找到了怎么做的。这种方法适用于单一产品。
将这段代码添加到您的functions.php文件中(请记住将其放在您的子主题中,以便在有woocommerce升级时不会被替换)。
这将在订单接收的URL中添加SKU。
//ADD SKU IN THANK YOU URL
add_filter('woocommerce_get_checkout_order_received_url','override_return_url',10,2);
function override_return_url($return_url,$order){
//create empty array to store url parameters in
$sku_list = array();
// retrive products in order
foreach($order->get_items() as $key => $item)
{
$product = wc_get_product($item['product_id']);
//get sku of each product and insert it in array
$sku_list['product_'.$item['product_id'] . 'sku'] = $product->get_sku();
}
//build query strings out of the SKU array
$url_extension = http_build_query($sku_list);
//append our strings to original url
$modified_url = $return_url.'&'.$url_extension;
return $modified_url;
}希望能帮上忙!
https://stackoverflow.com/questions/51599266
复制相似问题