送料を固定しない場合に、最も低い送料を採用する方法

フォーラム 使い方全般 送料を固定しない場合に、最も低い送料を採用する方法

  • このトピックには3件の返信、2人の参加者があり、最後にyskysmrにより5年、 9ヶ月前に更新されました。
4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • 投稿者
    投稿
  • #85969
    kissui
    参加者

    複数の商品を買った場合、送料無料の商品が含まれていれば送料無料にしたいと思っています。そこで、
    配送方法では送料を固定しないで、「送料」で全国一律料金と送料無料の2つを設けて、各商品に割り当てています。Welcartでは複数の「送料」がある場合、最も高い料金が選ばれる仕様となっておりますが、これを最も低い料金が選ばれるようにしたいと思っています。

    phpのカスタマイズは初心者なもので、
    以下のようにfunction.phpに追記してみましたが、反映されません。
    何か方法はありますでしょうか?

    ////////////////////////////////////////
    add_filter( ‘usces_filter_getshippingcharge’, ‘my_getshippingcharge’, 10, 3);

    function my_getshippingcharge($charge, $cart, $entry){
    if( count($charges) > 0 ){
    sort($charges);
    $min_charge = $charges[0];
    $charge = $min_charge + array_sum($individual_charges);
    }else{
    $charge = array_sum($individual_charges);
    }
    }
    //////////////////////////////////////

    ——————————————-
    WordPress のバージョン:(4.9.6)
    Welcart のバージョン:(1.9.10)
    Welcart専用の拡張プラグイン:(WCEX Multiple Shipping、Image Uploader for Welcart)
    ご利用のテーマ:(Welcart VOLL)
    症状を確認したブラウザ:chrome
    サーバー:(Xserver、X10プラン)
    SSLの利用:(常時SSL)
    WordPress のパーマリンク設定:(/%category%/%postname%/)
    ——————————————–

    #85975
    yskysmr
    キーマスター

    こんにちは。

    フック関数内で、$charge を返却(return)しているか確認してください。

    #85978
    kissui
    参加者

    ご返信ありがとうございます。
    失礼しました。下記の通り、return $charge;を入れてみましたが、
    うまくいきませんでした。
    他に何か原因が考えられるでしょうか?

    add_filter( ‘usces_filter_getshippingcharge’, ‘my_getshippingcharge’, 10, 3);
    function my_getshippingcharge($charge, $cart, $entry){
    if( count($charges) > 0 ){
    sort($charges);
    $min_charge = $charges[0];
    $charge = $min_charge + array_sum($individual_charges);
    }else{
    $charge = array_sum($individual_charges);
    }
    return $charge;
    }

    #86023
    yskysmr
    キーマスター

    kissui 様

    PHP コードのデバッグは、WordPress のデバッグモードを TRUE にして検証してください。

4件の投稿を表示中 - 1 - 4件目 (全4件中)
  • このトピックに返信するにはログインが必要です。