2017-07-07 51 views
1

在WordPress
我試圖找到一種方法,使用2個運費使用Woocommerce:
如果客戶訂單小於n金額,然後航運是標準的X量
如果客戶訂單數量超過n,那麼發貨量減少到x金額
如果訂單符合降低運輸的條件,我還需要隱藏標準。只顯示一個運費基於車量

目前woocommerce同時顯示的運輸費用,如果訂單符合降低運輸

任何想法如何,我可以解決這個嗎?

感謝

+0

您是否嘗試過我的答案的代碼...只是想知道一些反饋。謝謝 – LoicTheAztec

回答

0

這裏是woocommerce_package_rates動作鉤子鉤住一個自定義函數,將根據車量限制只顯示一個出貨率:

add_filter('woocommerce_package_rates', 'hide_sshipping_rate_based_on_cart_amount', 100); 
function hide_sshipping_rate_based_on_cart_amount($rates) { 

    // HERE define the limit amount to switch of shipping rate (integer) 
    $amout_limit = 600; 
    // Cart total amount (integer) 
    $cart_total = WC()->cart->cart_contents_total; 

    // Set below your 2 Rate ID slugs 
    if($cart_total >= $amout_limit) 
     unset($rates['flat_rate:12']); // Removes the LOWER Rate 
    else 
     unset($rates['flat_rate:8']); // Removes the HIGHER Rate 

    return $rates; 
} 

代碼放在的function.php文件你活躍的孩子主題(或主題),或任何插件文件。

+0

嗨LoicSorry我做過,但它沒有奏效。我最終找到了一個允許2個運費的插件,試圖找到一種方法,現在我們可以將國家分爲兩部分,但使用相同的國家代碼。示例英格蘭(GB)蘇格蘭(GB) – Patdundee

+0

您正在使用哪種woocommerce版本?這真的很有用。你只需要設置2個正確的slu for以獲得更低和更高的費率...如果需要,您可以通過Skype聊天與我聯繫(我的ID是'marsloic')... – LoicTheAztec