Я пытаюсь сделать скидку в процентах от общего веса корзины.Я использую этот скрипт:
add_action( 'woocommerce_cart_calculate_fees', 'discount_on_total_weight', 10, 1 );
function discount_on_total_weight( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
$cart_total = $cart->cart_contents_total; // Cart total
$total_weight = $cart->get_cart_contents_weight(); // Cart total weight
if ( $total_weight > 12 )
$percent = 20; // 20%
elseif ( $total_weight >= 6 && $total_weight < 11 )
$percent = 13; // 13%
else
$percent = 0;
$discount = $cart_total * $percent / 100;
$cart->add_fee( "Sconto: $percent%", -$discount, true );
}
Иногда он работает только при добавлении товаров, но когда я пытаюсь удалить его из корзины, он не работает.