На странице оформления заказа в WooCommerce выводится подытог суммы по всем товарам, которые добавлены в корзину. Но если применяется купон, то суммы подытога не изменяется и это очень не удобно для клиента.

Вставьте следующий код в файл function.php для пересчета подытога с учетом скидки.

//WooCommerce 3.4.5
//Подытог минус скидка по купону
add_filter( 'woocommerce_cart_subtotal', 'slash_cart_subtotal_if_discount', 99, 3 );
function slash_cart_subtotal_if_discount( $cart_subtotal, $compound, $obj ){
global $woocommerce;
if ( $woocommerce->cart->get_cart_discount_total() <> 0 ) {
$new_cart_subtotal = wc_price( WC()->cart->subtotal - $woocommerce->cart->get_cart_discount_tax_total() - $woocommerce->cart->get_cart_discount_total() );
$cart_subtotal = sprintf( '<del>%s</del> <b>%s</b>', $cart_subtotal, $new_cart_subtotal );
}
return $cart_subtotal;
}

Где находится файл function.php?

Файл function.php находится в папке вашей темы WordPress, путь к файлу следующий:
/wp-content/themes/Тема WordPress/function.php

Этот код еще работает?

Пожалуйста, сообщите мне в комментариях о работоспособности. Данный код тестировался с темой Newspaper, версией PHP 7 и WooCommerce указанной в коде.