首页 > 解决方案 > Woocommerce 订阅:更改付款方式应该有 0 订阅费

问题描述

我试图找出一个逻辑,在 woocommerce 订阅下的客户帐户中切换付款方式时将运费设置为 ​​0,其中 URL 包含此值

&kco-action=change-subs-payment

此代码与此处创建的代码重复 代码链接

 add_action('woocommerce_cart_calculate_fees','custom_handling_fee',10,1);
 function custom_handling_fee($cart){
 if(!is_admin() && ! defined('DOING_AJAX') && get_query_var('cat'))
    return;
 if('cod' === WC()->session->get('chosen_payment_method')){
    $extra_cost = 0.00;
    $cart_total = $cart->cart_contents_total; 
    $fee = $cart_total * $extra_cost;
    if($fee != 0)
    $cart->add_fee('COD Charge',$fee,true);
  }
 }

一旦它在 url 中检测到特定的 var,它就会将运费设置为 ​​0。我现在面临的问题是,当客户切换 woocommerce 订阅的付款方式时,他会在成功更改付款方式之前先支付运费。

标签: phpwordpresswoocommercewoocommerce-subscriptions

解决方案


推荐阅读