welcartでの送料設定で条件が複数ある場合
通販サイトで「5,000円以上のお買い上げ送料無料」や「地域によって送料は異なります」という表記はよく見かけます。
しかしサイトによっては、これらが重なることもあり得ます。
全ての地域で送料を無料にしていては、商品単価によっては肝心の利益がなくなってしまいますからね。
そのような複数条件の場合、下記の方法でうまくいくようです。
参考にさせていただいたのは
どちらの記事も Welcart カスタマイズ ブログ様 です。いつもお世話になっております。
相変わらずの他力本願、しかも少し危ない橋を渡っているかもしれないので、「私はこうしました」という参考程度の認識でお願いします。
functions.php に以下のコードを入力します。
[code]
//福井県からの注文で5,000円以上購入の場合のみ送料を100円にする
add_filter(‘usces_filter_set_cart_fees_shipping_charge’, ‘my1_filter_set_cart_fees_shipping_charge’, 10, 3);
function my1_filter_set_cart_fees_shipping_charge($shipping_charge, $cart, $entry){
$myprefs = array(‘福井県’); //都道府県を指定
if(in_array($entry[‘delivery’][‘pref’], $myprefs) and ($entry[‘order’][‘total_items_price’] >= 5000) ){
$shipping_charge = 100; //金額を指定
}
return $shipping_charge;
}
[/code]
andで繋げただけじゃないのか!?
そうツッコミを入れた方は正しいです。
しかしPHP(永遠の)初心者としては、誤作動などしないか、かなり不安だったのですよ。
運送料も上がったことですし、今後こういった設定は増えてくるかもしれません。
しかし、運送料の値上げの理由として、人件費と燃料高が挙げられていましたが、最近その燃料が安くなっていっています。
これが一時の現象なら仕方ないですが、もしガソリン代が下降していくなら、運送料もまた変化していくことを期待したいです。
【ハートブレーン】https://blog.heart-kokoro.net
【ハートブレーン】https://heartbrain.netよろしければ、SNSでのシェアやランキングなど、応援よろしくお願いします。