WC()->购物车-> fee_total和WC()->购物车-> get_fee_total()在添加费用时在结帐页面上显示为零

时间:2020-01-26 09:01:04

标签: php wordpress woocommerce

我们有一个结帐字段编辑器模块,该模块可以将费用附加到选项字段,以便当您选择这样的选项字段时,它将向您的购物车添加费用并更新结帐总额。

我们还有一个自定义的支付网关模块,该模块向客户显示要支付的金额,以及用于计算总金额的代码如下:

$total_cart = (float)is_object( WC()->cart ) ? WC()->cart->cart_contents_total : '';

$total_shipping = (float)is_object( WC()->cart ) ? WC()->cart->shipping_total : '';

$total_tax = (float)is_object( WC()->cart ) ? WC()->cart->tax_total : '';

$total_shipping_tax = (float)is_object( WC()->cart ) ? WC()->cart->shipping_tax_total : '';

$total_fees = (float)is_object( WC()->cart ) ? WC()->cart->fee_total : '';

$total_amount = $total_cart+$total_shipping+$total_tax+$total_shipping_tax+$total_fees;

尽管只要选择了另一种运输方式,变量$total_shipping的更新效果就会很好,但是除非刷新浏览器,否则添加费用(保持零)后,变量$total_fees不会更新为正确的值。我们还尝试使用函数get_fee_total()来计算它,但结果相同。

我们正在使用诸如WC()->cart->totalWC()->cart->get_total()这样的冗余方式计算总数,最初显示的是正确的值,但是在用户在结帐表单上选择任何内容导致“ Ajax刷新”后变为零。到购物车。

0 个答案:

没有答案