cloudwp | WooCommerce 繁體中文使用手冊

免運時隱藏其他物流方式

當免運費可用時,你可能想要隱藏其他付費物流選項,簡化客戶的結帳體驗。以下提供兩種實現方式。

PHP 程式碼片段

將以下程式碼加入主題的 functions.php 或使用程式碼片段外掛:

<?php
/**
 * 當免運費可用時隱藏其他物流方式
 */
add_filter( 'woocommerce_package_rates', 'hide_shipping_when_free_is_available', 100 );

function hide_shipping_when_free_is_available( $rates ) {
    $free = array();
    foreach ( $rates as $rate_id => $rate ) {
        if ( 'free_shipping' === $rate->method_id ) {
            $free[ $rate_id ] = $rate;
            break;
        }
    }
    return ! empty( $free ) ? $free : $rates;
}

此程式碼會檢查可用的物流方式,如果包含免運費選項,則只顯示免運費,隱藏所有其他選項。

使用外掛

如果你不想編輯程式碼,可以使用第三方外掛來實現此功能。在 WordPress 外掛目錄搜尋「hide shipping when free」可找到相關外掛。

注意事項

  • 修改程式碼前請先備份網站
  • 建議在測試環境中先測試
  • 如果使用子主題,將程式碼加入子主題的 functions.php