我想在申请优惠券后在结账页面上显示折扣价,优惠价格显示在购物车页面和支付网关上,但我也想在结账页面上显示,因此客户可以轻松了解他们已经申请优惠券。< / p>
有没有办法在申请优惠券后显示折扣价。
有了这个钩子,我想在结账页面上获得折扣价
function woocommerce_order_review() {
$totalp = $woocommerce->cart->get_cart_subtotal();
$totaldisc = $woocommerce->cart->get_total_discount();
$resultp = $totalp - $totaldisc;
print_r($resultp);
}
add_action( 'woocommerce_checkout_order_review', 'woocommerce_order_review', 10 );
答案 0 :(得分:2)
您可以自定义woocommerce / templates / checkout / review-order.php模板,并根据您的要求显示折扣价,方法是将其放在您的主题文件夹下。
您在review-order.php中有购物车项目循环
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
有了这个内容。
在这里你将在最后一个表格单元格中有小计。在那里你可以显示折扣价。
或者你可以实现这个钩子。 “woocommerce_cart_item_subtotal”
答案 1 :(得分:0)
我已经解决了我的问题,下面是我刚刚复制了review-order.php的代码
wp-content / woocommerce / checkout / review-order.php
在我的主题文件夹woocommerce
mytheme / woocommerce / checkout / review-order。 PHP 强>
找到这个类 class =“product-total”用下面提到的代码替换这个td的整个php
<?php function remove_currency($price) {
return (double) preg_replace('/[^0-9\.]+/', '', $price);
}?>
<?php
$total = remove_currency(apply_filters( 'woocommerce_cart_item_subtotal', WC()->cart->get_product_subtotal( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ));
$discount = remove_currency(apply_filters( 'get_total_discount', WC()->cart->get_total_discount( $_product, $cart_item['quantity'] ), $cart_item, $cart_item_key ));
echo $total-$discount;
?>
如果我错了,请纠正我 谢谢