我需要“朋友”客户的功能,他们可以以更优惠的价格获得产品。基于用户角色的解决方案不是我想要的,客户希望它与优惠券一起使用。他们将优惠券代码提供给客户,例如,他们从某些产品的REGULAR价格中获得8欧元的折扣。问题是,默认情况下,WooCommerce优惠券从最小价格计算出来。如果设置了销售价格,则此计算是错误的,客户会觉得价格太便宜了。基本上,我希望优惠券为某些产品提供固定的“朋友”价格。
我一直在四处搜寻,找不到适合的解决方案。欢迎提供任何解决此问题的建议。
我检查了多个插件,但都没有满足我的要求。
答案 0 :(得分:0)
添加到functions.php。基于此代码https://brilliantinfo.net/apply-coupon-discount-on-regular-price-in-woocommerce/
已修改为fixed_product的优惠券类型。如果您只需要特定的优惠券,则可以进行修改。 (按目前的情况,这将适用于所有使用过的fixed_product优惠券)
add_action( 'woocommerce_before_calculate_totals', 'adjust_cart_coupon', 10, 1);
function adjust_cart_coupon( $cart_object) {
global $woocommerce;
if ( is_admin() && ! defined( 'DOING_AJAX' ) ){
return;
}
$coupon = False;
if ($coupons = WC()->cart->get_applied_coupons() == False ) {
$coupon = False;
} else {
foreach ( WC()->cart->get_applied_coupons() as $code ) {
$coupons1 = new WC_Coupon( $code );
if ($coupons1->type == 'fixed_product'){
$coupon = True;
}
}
}
if ($coupon == True){
foreach ( $cart_object->get_cart() as $cart_item ){
$price = $cart_item['data']->regular_price;
//sets cart item to use regular price and not sale price
$cart_item['data']->set_price( $price );
}
}
}
答案 1 :(得分:0)