【问题标题】:Woocommerce checkout: Update cost OR update total price via "update_checkout" ajax eventWoocommerce 结帐:通过“update_checkout”ajax 事件更新成本或更新总价
【发布时间】:2016-03-18 02:47:07
【问题描述】:

所以,我通过 javascript 触发 update_checkout。然后,我有要在woocommerce_review_order_before_shipping 钩子中调用的函数。功能是添加/删除free_shipping 送货方式(它基于货到付款 可用性)。

付款方式有两个单选按钮:

  • 直接转账
  • 货到付款

脚本已经运行。因此,当我选择 COD(货到付款)时,会自动选择免费送货方式。

但是,问题是总价没有改变,这表明成本仍然可用。好吧,它改变了,但为时已晚。我说晚了,因为当我通过选择直接银行转帐单选按钮更改付款方式时,总价格被取消了。

问题是,

  1. 为什么更改付款方式后总价没有实时更新?好的,它已更改,但在下一个更改事件中。
  2. 什么是更新总价或更新成本的 WooCommerce API?我应该把这个放在钩子的什么地方?

:) 非常感谢您的回答

【问题讨论】:

    标签: wordpress woocommerce


    【解决方案1】:

    你试过WC_AJAX中的this函数吗:

    public static function update_order_review(){
    }
    

    通过调用:

    WC_AJAX::checkout();
    

    【讨论】:

    • 感谢您回答@Robin Pedersen,我想我找到了问题所在。现在已经解决了,如果可以的话我会回答这个问题但是发现了另一个问题,也许我也会提出另一个问题
    【解决方案2】:

    WC API 中的这两个函数应该会有所帮助。

    calculate_totals()calculate_shipping()

    global $woocommerce;
    
    $woocommerce->cart->calculate_totals();
    $woocommerce->cart->calculate_shipping();
    

    【讨论】:

      猜你喜欢
      • 2017-04-15
      • 2015-06-28
      • 1970-01-01
      • 2021-09-24
      • 2020-08-12
      • 2015-11-14
      • 1970-01-01
      • 2015-09-27
      • 1970-01-01
      相关资源
      最近更新 更多