我目前对75美元以上的商品免费送货,但是如果管理员登录并下订单。我希望管理员可以免费送货,无论购物车的运费不超过$ 75。我一直在尝试使用以下代码,但并未触发它。我在做错什么吗?
add_filter( 'woocommerce_package_rates','show_free_shipping',10,2 );
function show_free_shipping( $rates,$package ) {
global $current_user;
$free = array();
foreach ( $rates as $rate_id => $rate ) {
if ( 'free_shipping' === $rate->method_id ) {
if ($current_user->ID) {
$user_roles = $current_user->roles;
$user_role = array_shift($user_roles);
if ($user_role == 'administrator') {
$free[ $rate_id ] = $rate;
break;
}
}
}
}
return ! empty( $free ) ? $free : $rates;
//return $rates;
}