在 WooCommerce 中隐藏特定运输类别的运输方式

用户3158006

在 WooCommerce 中,我使用隐藏 WooCommerce 中特定运输类别的运输方式答案代码第二种方式)在购物车中隐藏基于不同运输类别的运输方式,但问题是我使用管理 2 种语言站点的 WPML 插件,所以只找一个班是行不通的。

所以我需要处理 2 个运输类而不是一个。我尝试以这种方式添加 2 个运输类:

// HERE define your shipping classes to find
$class = 3031, 3032;

但它破坏了网站。所以我想隐藏定义的统一费率,不仅适用于运输类别30313032.

我做错了什么?如何在不破坏网站的情况下启用 2 个运输类别?

LoicTheAztec

要使用多个运输类,您应该首先在一个数组中定义它们,并在IF语句中以in_array()这种方式使用条件函数:

add_filter( 'woocommerce_package_rates', 'hide_shipping_method_based_on_shipping_class', 10, 2 );
function hide_shipping_method_based_on_shipping_class( $rates, $package )
{
    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
        return;

    // HERE define your shipping classes to find
    $classes = [3031, 3032];

    // HERE define the shipping methods you want to hide
    $method_key_ids = array('flat_rate:189');

    // Checking in cart items
    foreach( $package['contents'] as $item ) {
        // If we find one of the shipping classes
        if( in_array( $item['data']->get_shipping_class_id(), $classes ) ){
            foreach( $method_key_ids as $method_key_id ){
                unset($rates[$method_key_id]); // Remove the targeted methods
            }
            break; // Stop the loop
        }
    }
    return $rates;
}

代码位于活动子主题(或活动主题)的 functions.php 文件中。测试和工作。

有时,您可能需要刷新前往配送区域的配送方式,然后禁用/保存并重新启用/保存您的“统一费率”配送方式。

相关主题:在 WooCommerce 中隐藏特定运输类别的运输方式

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

隐藏基于WooCommerce购物车中运输类别的COD付款方式

来自分类Dev

删除WooCommerce 2.6和3+中特定类别的运输统一费率方法

来自分类Dev

基于特定运输类别的项目数量的Woocommerce运输成本

来自分类Dev

基于 Woocommerce 中的运输类别的运输成本折扣

来自分类Dev

有条件地隐藏WooCommerce中的运输方式

来自分类Dev

woocommerce 根据数量隐藏运输方式

来自分类Dev

重命名WooCommerce仅针对特定类别的运输完整标签

来自分类Dev

通过WooCommerce订单和电子邮件中的文本更改运输方式以使用特定的运输方式

来自分类Dev

在WooCommerce中仅对本地取件运输方式保留特定的付款方式

来自分类Dev

WooCommerce根据特定的运输方式更改BACS订单的状态

来自分类Dev

根据WooCommerce中的运输类别自定义计算的运输成本

来自分类Dev

在WooCommerce结帐中为选定的特定运输方式添加主体类

来自分类Dev

在 Woocommerce 3 中更改运输方式标签名称

来自分类Dev

根据运输方式更改 Woocommerce 订单状态

来自分类Dev

获取 Woocommerce 中选择的运输方式成本

来自分类Dev

WooCommerce - 重复订单的不同运输方式

来自分类Dev

根据产品类别和运输方式添加费用WooCommerce

来自分类Dev

WooCommerce-基于购物车小计的隐藏/显示运输方式

来自分类Dev

在 Woocommerce 单个产品的“添加到购物车”下方显示特定的运输类别

来自分类Dev

在WooCommerce中隐藏特定类别的价格,并且仅隐藏要从该类别购买的特定用户角色的价格

来自分类Dev

WooCommerce-如何在calculate_shipping函数中获取购物车物品的运输类别?

来自分类Dev

以编程方式从现有WooCommerce订单更改运输方式

来自分类Dev

在WooCommerce单个产品页面上显示运输类别名称

来自分类Dev

无法从woocommerce扩展中的订单中获取运输方式,但可以通过主题获取

来自分类常见问题

在WooCommerce结帐中更改运输或付款方式更改时的迷你购物车

来自分类Dev

根据WooCommerce中的购物车小计将所有运输方式成本设置为零

来自分类Dev

根据 WooCommerce 中的运输方式自定义订单接收页面

来自分类Dev

在WooCommerce中仅允许特定运输区域外的特定产品的本地取件

来自分类Dev

在 WooCommerce 商店页面中隐藏特定类别

Related 相关文章

  1. 1

    隐藏基于WooCommerce购物车中运输类别的COD付款方式

  2. 2

    删除WooCommerce 2.6和3+中特定类别的运输统一费率方法

  3. 3

    基于特定运输类别的项目数量的Woocommerce运输成本

  4. 4

    基于 Woocommerce 中的运输类别的运输成本折扣

  5. 5

    有条件地隐藏WooCommerce中的运输方式

  6. 6

    woocommerce 根据数量隐藏运输方式

  7. 7

    重命名WooCommerce仅针对特定类别的运输完整标签

  8. 8

    通过WooCommerce订单和电子邮件中的文本更改运输方式以使用特定的运输方式

  9. 9

    在WooCommerce中仅对本地取件运输方式保留特定的付款方式

  10. 10

    WooCommerce根据特定的运输方式更改BACS订单的状态

  11. 11

    根据WooCommerce中的运输类别自定义计算的运输成本

  12. 12

    在WooCommerce结帐中为选定的特定运输方式添加主体类

  13. 13

    在 Woocommerce 3 中更改运输方式标签名称

  14. 14

    根据运输方式更改 Woocommerce 订单状态

  15. 15

    获取 Woocommerce 中选择的运输方式成本

  16. 16

    WooCommerce - 重复订单的不同运输方式

  17. 17

    根据产品类别和运输方式添加费用WooCommerce

  18. 18

    WooCommerce-基于购物车小计的隐藏/显示运输方式

  19. 19

    在 Woocommerce 单个产品的“添加到购物车”下方显示特定的运输类别

  20. 20

    在WooCommerce中隐藏特定类别的价格,并且仅隐藏要从该类别购买的特定用户角色的价格

  21. 21

    WooCommerce-如何在calculate_shipping函数中获取购物车物品的运输类别?

  22. 22

    以编程方式从现有WooCommerce订单更改运输方式

  23. 23

    在WooCommerce单个产品页面上显示运输类别名称

  24. 24

    无法从woocommerce扩展中的订单中获取运输方式,但可以通过主题获取

  25. 25

    在WooCommerce结帐中更改运输或付款方式更改时的迷你购物车

  26. 26

    根据WooCommerce中的购物车小计将所有运输方式成本设置为零

  27. 27

    根据 WooCommerce 中的运输方式自定义订单接收页面

  28. 28

    在WooCommerce中仅允许特定运输区域外的特定产品的本地取件

  29. 29

    在 WooCommerce 商店页面中隐藏特定类别

热门标签

归档