2017-03-27 101 views
0

我想在结账页面上应用优惠券后显示折扣价格,折扣价格也显示在购物车页面和支付网关上,但我也想在结帐页面上显示,所以客户可以很容易地理解他们已经应用优惠券在结帐页面显示优惠券折扣价:WooCommerce

enter image description here

有什么办法适用优惠券后,显示折扣价。

有了这个钩子我试图得到折扣价结账页面上

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); 
+1

在一个正常woocommerce结帐页面,折扣总计始终显示。你想要显示每种产品的折扣价格吗? –

+0

在我的情况下,它没有在结帐页面上显示折扣价格,它只在购物车页面上显示折扣价格。 –

回答

1

你可以通过把它定义woocommerce /模板/结帐/审查-order.php模板,显示折扣价按您的要求在你的主题文件夹下。


你必须回顾 - order.php

foreach (WC()->cart->get_cart() as $cart_item_key => $cart_item) { 

与此内容车中的物品循环。

在这里你将有最后一个表格单元格的小计。在那里你可以显示折扣价格。

或者你也可以实现这个钩子。 “woocommerce_cart_item_subtotal”

+0

嗨,感谢您的回复,但在我的情况下,它显示原价结算页上,而不是打折的价格。 –

+0

这就是为什么你可以从这个模板定制它。您可以在结账页面上显示您想要显示的任何价格。 –

+0

嗨,你能告诉我如何采取优惠价格,并在结帐页上显示谢谢 –

0

我已经解决了下面我的问题是我刚刚复制的审查,order.php的代码
的wp-content/woocommerce /结帐/审查-order.php在我的主题
文件夹woocommerce
mytheme的/ woocommerce /结帐/审查-order.php

,发现该类类= “产品总”下面代替这个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; 
     ?> 

请纠正我,如果我错了 谢谢

+0

这似乎很好。 :)如果这对你有用,你可以标记我的答案是正确的。 –

相关问题