【发布时间】:2018-11-27 04:38:24
【问题描述】:
我有一张特定的优惠券special50。当有人在商店应用此优惠券时,需要添加新的运输方式。当前运输方式价格为 50 美元(统一费率)且应用优惠券新运输方式后,定价为 25 美元。总之,如果您使用此优惠券,您将获得 50% 的产品折扣(WooCommerce 已经提供给我们)和 50% 的运费折扣(我真的需要)。
add_action( 'woocommerce_flat_rate_shipping_add_rate', 'add_another_custom_flat_rate', 10, 2 );
function add_another_custom_flat_rate( $method, $rate ) {
$new_rate = $rate;
$new_rate['id'] .= ':' . 'custom_rate_name';
$new_rate['label'] = 'Shipping and handling';
global $woocommerce, $wpdb;
$coupon = "SELECT post_title FROM {$wpdb->posts} WHERE post_title='special50' AND post_type ='shop_coupon' AND post_status ='publish'";
if(in_array($coupon_id, $woocommerce->cart->applied_coupons)){
$cost = 25;
}
$new_rate['cost'] = $cost;
$method->add_rate( $new_rate );
}
【问题讨论】:
标签: php wordpress woocommerce shipping coupon