在woocommerce,我们允许在我们的商店当时只购买一种产品 . 我们的产品很少,没有商店页面(或档案页面) . 数量字段已禁用,客户将被重定向到结帐时添加到购物车 .
我们需要自定义一些URL以检测已添加到购物车的内容(已购买的内容) . 所以我需要传播产品SKU Checkout和订购收到的URL .
例如,我可以使用以下代码在THANK YOU URL中添加SKU:
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();
// retrieve 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;
}
但我也需要结帐网址中的SKU .
有关信息,我在产品页面上有多种添加到购物车按钮:
-
woocommerce默认的一个 .
-
使用Shortcode的产品内容中的其他一些内容,如
[add_to_cart id="99"]
-
最后一个使用Sticky add to cart for WooCommerce插件 .
可能吗?我应该怎么做?
1 回答
Your code is a bit outdated 自Woocommerce 3 ...而不是你应该使用以下代码 .
您必须通过设置或代码禁用任何添加到购物车重定向 . 您必须删除所有相关代码以避免错误或故障 .
代码:
代码位于活动子主题(或活动主题)的function.php文件中 . 经过测试和工作
专门针对您的插件,您还应该添加以下代码:
代码位于活动子主题(或活动主题)的function.php文件中 . 经过测试和工作