我的“立即购买”按钮转到“结帐”页面,并自动在目标产品之外添加订阅产品。添加订阅产品后,由于订阅产品,我还提供25%的折扣。折扣是根据“购物车总计”计算的,应该是一次性的。订阅产品总共显示0.00,因为它有5天的试用期。但是,当我收到付款收据时,发现订购产品的价格也降低了25%...这不是故意的。折扣应该只在购物车总数上,不应该影响订购产品的价格...任何人都可以给我一些指导吗?
这是折扣代码:
/**
*
* CART DISCOUNT FUNCTION
*
*/
function discount_based_on_product( $cart ) {
$product_id = get_field('woocom_product_id', 'option');
$product_cart_id = WC()->cart->generate_cart_id( $product_id );
$in_cart = WC()->cart->find_product_in_cart( $product_cart_id );
if ( $in_cart ) {
// Collecting Product ID from ACF
$discount_percent = get_field('woocom_order_bump_discount', 'option');
// Cart Total
$total = $cart->cart_contents_total;
// Discount Calculation
$discount = $total * $discount_percent * 0.01;
// Add the discount
$cart->add_fee(__( $discount_percent . '% Discount', 'woocommerce'), -$discount );
}
}
add_action('woocommerce_cart_calculate_fees', 'discount_based_on_product', 10, 1);