分享笔记:

WooCommerce有包邮时去除付费选项

删除多余运费选项

文章目录

你居然能来这篇笔记,那么大概率是因为你遇到了这种情况。这个一直都是WooCommerce一个反人类的小BUG,当你可以享受包邮时,其他的付费选项还出现是不合理的。有些高级主题会自己去掉多余的配送选项,而有些不会。下图是Elementor的checkout widget,它这里就不会自己删除,我们看看需要什么操作。
woocommerce包邮选项
有一些用户可能看到你网站上哪写着到一定金额就免运费,所以在付款的时候不会具体看运费这一块了,可能会导致最后有不良的影响。

通过插件删除多余配送选项

这种插件后台非常多,我这随便说个:Hide shippig Method,你下载插件安装后,它其实就自动运行了,不需要任何其他操作。

它还可以添加一些额外的显示规则,这个就看你自己的需求了。它默认设置就是当有包邮选项时,其他选项消失。

删除包邮以外的选项

或者用WC Hide Shipping Methods,它的设置没有像上面那个那么花里胡哨,就是单纯的隐藏付费选项。

通过代码删除多余配送选项

你可以通过代码插件运行代码或者用子主题添加自定义代码,这是最“干净”的方法。

function action_woocommerce_before_cart() { 
    // NOT empty (get)
    if ( count( WC()->session->get( 'shipping_for_package_0')['rates'] ) > 0 ) {
        // Loop through
        foreach ( WC()->session->get('shipping_for_package_0')['rates'] as $rate_id => $rate ) {            
            // For free shipping
            if ( $rate->method_id == 'free_shipping' ) {
                $default_rate_id = array( $rate_id );
                break;
            }
        }

        // Set
        WC()->session->set( 'chosen_shipping_methods', $default_rate_id );
    }
}
add_action( 'woocommerce_before_cart', 'action_woocommerce_before_cart', 10, 0 );
woocommerce删除包邮以外的选项

为笔记评分

平均评分 5 / 5. 摘星者: 1

有疑问?留个言吧!

更多结果...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

更多结果...

Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors