WooCommerce检查是否已激活免费送货
问题描述:
我想告诉人们,如果我的WooCommerce购物车上已激活免费送货,请告诉人们“嘿,你有免费送货!”。免费送货可以通过订单金额或优惠券激活。WooCommerce检查是否已激活免费送货
我试过这段代码,但它返回一个空数组。
global $woocommerce;
$woocommerce->shipping->get_shipping_methods();
否则我可以检查是否设置了free_shipping。
希望你们有一些伟大的想法如何得到这个工作:)
答
global $woocommerce;
$shipping_methods = $woocommerce->shipping->load_shipping_methods();
if($shipping_methods['free_shipping']->enabled == "yes")
{
$cart_total_amount = floatval(preg_replace('#[^\d.]#', '', $woocommerce->cart->get_cart_total()));
if($shipping_methods['free_shipping']->min_amount <= $cart_total_amount) echo "Hey, you've got free shipping!";
else echo "Free shipping on all orders of " . $shipping_methods['free_shipping']->min_amount . get_woocommerce_currency_symbol() . "+";
}