WooCommerce-如果无法运送一件物品则不运送-功能

问题描述

我在使用WooCommerce功能方面有些挣扎。 WooCommerce没有解决错误:如果您的购物车中有两个物品。一个有运输类别的成本,而另一个没有运输成本。通常,WC应该像“没有运输方法,因为一件物品无法运输”那样处理它,但是看起来,WC承担了可运输产品的运输成本。 (https://github.com/woocommerce/woocommerce/issues/27030

所以我正在尝试解决这个问题。 想到了:

  1. 检查是否有针对特定国家/地区的输入
  2. 如果没有输入“中断”;
  3. 如果有输入...返回$ rates

我苦苦挣扎的问题是..我不知道如何获得运输班级的投入/成本。

// Do not ship if one class can't be shipped
add_filter('woocommerce_package_rates','fix_woocommerce_package_rates',200,2);
function fix_woocommerce_package_rates($rates,$package) {
    if(!WC()->cart->is_empty()) {

        $found_no_shipping_costs = false;

        foreach(WC()->cart->get_cart() as $cart_item) {
            $class = $cart_item['data']->get_shipping_class();
            if(SHIPPING RATE IS NOT DEFINED IN ONE ITEM) {
                $found_no_shipping_costs = true;
                break;
            }
        }
    }
    return $rates;
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)