Я пытаюсь изменить стандартную скидку купона WooCommerce на функцию, в которой она добавляет цена со скидкой к общей цене корзины. Поэтому вместо того, чтобы вычитать скидку, следует добавить ее к цене.
Я обнаружил, что это сделано в includes/class-wc-cart.php
файл, в функции с именем: get_discounted_price
а также woocommerce_get_discounted_price
Я попытался добавить фильтр для достижения вышеизложенного, но он работает не очень хорошо:
function custom_discount($price) {
global $woocommerce;
$undiscounted_price = $price;
$product = $values['data'];
$discount_amount = $coupon->get_discount_amount( 'yes' === get_option( 'woocommerce_calc_discounts_sequentially', 'no' ) ? $price : $undiscounted_price, $values, true );
$discount_amount = min( $price, $discount_amount );
$price = max( $price + $discount_amount, 0 );
return $price;
}
add_filter( 'woocommerce_get_discounted_price', 'custom_discount', 10);
Кто-нибудь, кто может помочь мне в этом?
Спасибо
Хорошо, что работает, это установить отрицательную купонную скидку, например, -10 🙂
Других решений пока нет …