我想创建一个计算运费的函数,如果我们购买的商品超过1000,则不收取运费,其他明智的收费应该是50或统一费率的运费方法。我想为此创建函数而不使用任何插件。
答案 0 :(得分:0)
add_filter('woocommerce_package_rates','conditionally_hide_shipping_methods',100,2); function conditionally_hide_shipping_methods($ rates,$ package){ //在数组中将您的第二固定费率“ Express Shipping”(您永远不会隐藏): $ flat_rates_express = array('flat_rate:5','flat_rate:12','flat_rate:14');
$free = $flat2 = array();
foreach ( $rates as $rate_key => $rate ) {
// Updated Here To
if ( in_array( $rate->id, $flat_rates_express ) )
$flat2[ $rate_key ] = $rate;
if ( 'free_shipping' === $rate->method_id )
$free[ $rate_key ] = $rate;
}
return ! empty( $free ) ? array_merge( $free, $flat2 ) : $rates;
}