2017-05-03 20 views
0

私のクライアントは家具を扱っています。彼はイギリスの建物の1階に無料で納品しています。しかし、配達が建物の最初/上の階にある場合。それで彼はそれに応じて請求する。このためのソリューションはありますか?WooCommerce 1階追加料金

ありがとうございます。

+0

あなたのアールは、配送先住所などユーザーからの一階または3階などの入力を取るつもりは?アドレスライン1またはアドレスライン2?追加した余分なフィールドはありますか? – Alice

+0

あなたは住所のフロア情報を言及する必要があります。 –

+0

私は1st、2nd Floorなどのカスタム選択オプションを追加し、そのフィールドで作業することを考えていました。 –

答えて

-1

あなたのfunctions.phpにユーザー

から

function extra_fees() { 
    global $woocommerce; 
    $Floorfee = 0.00; 
    ?> 
    <script> 
    var floor = jQuery('#txt1').val(); 
    if(floor>=1){ 
    <? 
    $spfee == "100"; 
    ?> 
    } 
    </script> 

    <? 
$woocommerce->cart->add_fee('Extra floor Charge', $Floorfee, true, 'standard'); 
    } 

add_action('woocommerce_cart_calculate_fees','extra_fees'); 

おかげで床を取得するためのカスタムfeilds #txt1を作成します!

+0

ありがとう、私はそれを試してみましょう。 –

0

まず、次のコード/ロジックを使用し、その後フラットレートの送料と送料無料を設定する -

function change_shipping_rates($rates, $package) { 
    if(isset($package['destination']['YOUR_FIELD_FLOOR_NO']) && $package['destination']['YOUR_FIELD_FLOOR_NO']<=1){ // Or what ever logic 

     // Remove flat rate from $rates array , keep free shipping 

    }else{ 
    // remove free shipping and keep the flat rate 
    } 
    return $rates; 
} 

add_filter('woocommerce_package_rates', 'change_shipping_rates', 10, 2); 
関連する問題