Отображение положительной выдающейся стоимости с Woocommerce и депозитными платежами - PullRequest
0 голосов
/ 21 ноября 2018

В настоящее время я работаю на веб-сайте Woocommerce, который требует, чтобы депозитные платежи в размере 5 фунтов стерлингов оплачивались в режиме онлайн на общую стоимость заказа (остальная часть оплачивается при получении).Я нашел некоторый код, который выполняет правильные расчеты, чтобы заставить оформить заказ до £ 5

// Note: this will force Cart to $5

add_action( 'woocommerce_cart_calculate_fees', 'force_cart_to_5' );

function force_cart_to_5() {
    $total_minus_5 = WC()->cart->get_cart_contents_total() - 5;
   WC()->cart->add_fee( 'Pay On Collection', - $total_minus_5 );
}

, но теперь он перечисляет оставшийся баланс как минус цифру.Я хотел бы использовать его в качестве значения, чтобы проиллюстрировать, что им нужно платить при сборе:

enter image description hereenter image description here Я понимаю, почему это необходимослучай для расчетов, но есть ли способ печатать положительное значение каждый раз, когда это появляется.Мне удалось сделать это один экземпляр и просто умножить значение на -1, когда оно распечатывается в порядке просмотра, но я хочу, чтобы сценарий перехвата всех я мог просто установить, как только базовое значение будет отрицательным для вычисления правильных итогов,но напечатанное значение является положительным.

1 Ответ

0 голосов
/ 21 ноября 2018

Вы захотите использовать фильтр woocommerce_cart_totals_fee_html, например.

add_filter('woocommerce_cart_totals_fee_html', 'show_positive_fee_value', 10, 2 );
function show_positive_fee_value($cart_totals_fee_html, $fee) {
    if($fee->name === 'Pay On Collection') {
        $cart_totals_fee_html = wc_price( -( $fee->total) );
    }
    return $cart_totals_fee_html;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...