質問 > フロント機能 > 金額別送料設定について |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
inf61 |
投稿日時: 2012/2/24 19:32
対応状況: −−−
|
常連 登録日: 2011/12/9 居住地: 投稿: 44 |
金額別送料設定について いつもお世話になっております。
合計金額別に応じて、都道府県別の送料を設定する事は可能でしょうか? 具体的には、 1.〜4,999円 2.5,000円〜9,999円 3.10,000円以上 という形で金額を分けて送料を設定したいと考えています。 もし、可能であればどなたか教えて頂けると助かります。 宜しくお願い致します。 [EC-CUBE] 2.11.4 |
ken-o |
投稿日時: 2012/2/27 9:36
対応状況: −−−
|
長老 登録日: 2011/9/22 居住地: 投稿: 222 |
Re: 金額別送料設定について 2.11系であれば、基本情報管理の支払方法設定で、料金体系を区分けすることができます。
例えば、「支払方法の新規作成」で、0〜4,999円 の支払い方法と、5,000円〜9,999円 と、10,000〜空 としてあげると料金体系別にわけることができます。 本件の参考になるかわかりませんが、ググってみたらこんな記事を見つけましたので、一応記載します↓。 http://ameblo.jp/webmage/entry-11079975076.html
|
webmage |
投稿日時: 2012/2/27 10:09
対応状況: −−−
|
半人前 登録日: 2011/7/1 居住地: 沖縄 投稿: 16 |
Re: 金額別送料設定について まずは、合計金額の各価格帯の「基本送料」を算出。
次に、各都道府県別料金(基本料金を除いた分の料金を設定しておく)を加算。 でいいのではないかと思います。 例えば、 1.〜4,999円->基本送料1000円 2.5,000円〜9,999円->基本送料500円 3.10,000円以上->送料無料 で、 沖縄・北海道の追加送料250円、その他の地域100円 とした場合…。 購入金額4500円で沖縄・北海道以外 ▼ 基本送料1000円+地域送料100円=1100円 購入金額5000円で沖縄・北海道以外 ▼ 基本送料500円+地域送料100円=600円 購入金額4500円で沖縄へ配送 ▼ 基本送料1000円+地域送料250円=1250円 …みたいな感じでしょうか。 僕のブログでクール便の場合の処理…という記事がありますが、このクール便のフラグ処理みたいな感じで、 1.〜4,999円 2.5,000円〜9,999円 3.10,000円以上 の場合のフラグをたてて計算すればいいと思います。
|
inf61 |
投稿日時: 2012/2/27 12:00
対応状況: −−−
|
常連 登録日: 2011/12/9 居住地: 投稿: 44 |
Re: 金額別送料設定について ken-o様
ご連絡ありがとうございます。 教えていただいた方法ですが、支払い方法を増やす事はできますが、 それぞれの送料は設定できるのでしょうか? 送料は管理画面では発送方法からしか設定ができないと思っているのですが… ちなみに支払い方法はどの金額でも同じで、送料が変わるだけです。 |
inf61 |
投稿日時: 2012/2/27 13:07
対応状況: −−−
|
常連 登録日: 2011/12/9 居住地: 投稿: 44 |
Re: 金額別送料設定について webmage様
ご連絡ありがとうございます。 教えていただいている方法は、EC-CUBEの管理画面で行う 作業になるのでしょうか? それともいずれかのファイルをカスタマイズする形に なりますでしょうか? また、webmage様のブログでクール便の処理の記事が…とありますが、 差し支えなければブログのURLを教えていただけますでしょうか? よろしくお願い致します。 |
ken-o |
投稿日時: 2012/2/27 19:57
対応状況: −−−
|
長老 登録日: 2011/9/22 居住地: 投稿: 222 |
Re: 金額別送料設定について inf61 様
すみません、都道府県別の送料を読み飛ばしていました。 上記の方法は支払い段階での話しでした。 〜〜〜/data/class/pages/shopping/LC_Page_Shopping_Confirm.phpの、104行目に、 引用:
がありますので、ここにif文を入れてみてはどうでしょう? 引用:
としてあげると、うまくいくかもしれません。
|
inf61 |
投稿日時: 2012/2/28 14:01
対応状況: −−−
|
常連 登録日: 2011/12/9 居住地: 投稿: 44 |
Re: 金額別送料設定について ken-o様
ご連絡ありがとうございます。 教えていただいた内容を元に、下記のようにif分を挿入してみました。
しかし、こちらの方法では購入の手続きまで進むと送料が0円と表示されてしまいます。 どこかコードに問題がありますでしょうか? ご指摘がありましたら教えて頂ければと思います。 よろしくお願い致します。 |
ken-o |
投稿日時: 2012/2/28 16:12
対応状況: −−−
|
長老 登録日: 2011/9/22 居住地: 投稿: 222 |
Re: 金額別送料設定について inf61 様
即席で申し訳ないのですが、たぶんこれで問題ないと思います。 引用:
上記の太文字をご覧下さい。 まずはじめの太文字は、僕の環境で111行目に存在したものです。前の画面までの一時保存されているデータを呼び出すもので、swichよりも上にないと、$arrOrderTemp['order_pref']で配送先設定した情報を引っ張ってこれないので移動します。 次の太文字は、$arrOrderTemp['order_pref']です。 引用:
では、NULLがvar_dumpで返されてしまうので、上記の通りに変更します。そうすると、都道府県番号を引っ張ってこれます。 最後の太文字は、return の代わりです。 47都道府県分は時間がなくてできませんでしたが、参考のように作っていただければ、問題ないと思います。 僕の環境(2.11.2)では、配送先「東京」=13番 で、料金29000円で、$hogeには210円入り、小計と合算されました。
|
inf61 |
投稿日時: 2012/2/28 18:47
対応状況: −−−
|
常連 登録日: 2011/12/9 居住地: 投稿: 44 |
Re: 金額別送料設定について ken-o様
ご連絡ありがとうございます。 送料が反映できるようになりました。 ありがとうございます。 ただ、「ご入力内容のご確認」ページにて、小計欄にすでに送料が 入った形で表示されており、送料欄は管理画面で設定した送料のまま 表示されます。 また、合計欄は今回設定した送料ではなく、元々の送料が加えられた形で計算されています。 小計には商品代金の合計、送料欄には今回設定した送料が表示され、 合計欄にもきちんと送料を反映した上で計算させたいと考えています。 色々なファイルを探して変更してみましたが、送料が管理画面の送料か、0円にしかならず、合計などへの反映もできておりません。 どのようにカスタマイズを行えば、上記の通りに表示させる事が できますでしょうか? 大変申し訳ありませんが、ご教授頂ければと思います。 どうぞよろしくお願い致します。 |
ken-o |
投稿日時: 2012/2/28 19:56
対応状況: −−−
|
長老 登録日: 2011/9/22 居住地: 投稿: 222 |
Re: 金額別送料設定について inf61 様
すみません、確認する程の時間が取れないので、とりあえず流れだけをお話します。 LC_Page_Shopping_Confirm.php の 引用:
で合計値を返しています。 上記の太文字の部分をご覧下さい。 $objCartSess->calculate が計算させるために、別のphpに明け渡している部分です。 では、肝心などのphpを呼んでいるかですが、 73行目に$objCartSess = new SC_CartSession_Ex();があります。 つまり、SC_CartSession.php の calculate ファンクションを呼び出しています。 SC_CartSession.php の 584行目に #calculate があります。 #calculateを見てみると、$objCartSess->calculateと同じ個数の変数が渡されています。そして、注釈(コメントアウト)に書かれているように、deliv_fee が送料であることがわかります。 なので、$objCartSess->calculateの中で、#calculateに渡す必要がなさそうなものと、計算させた変数を入れ替えます。 #calculate では、ただ、普通に$results['deliv_fee'] = $hoge;としてあげれば、反映されると思います。 ※一つだけ確認。 上記というか今回の案件の場合、おそらく複数の配送先を設定した時に正しく金額に反映されないような気がするのですが、それは問題ないですか? また、仮に完成した場合は、できる限りテストデータでチェックしてください。 ------------------------------- 先ほど記載しました、プログラムの↓ $this->tpl_total_inctax[$this->cartKey] = $CartProductsTotalPrice + $hoge; を、 $this->tpl_total_inctax[$this->cartKey] = $CartProductsTotalPrice にしてあげれば、送料が入っていない純粋な小計のみが出せます。
|
(1) 2 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |