プラグイン > その他 > 商品不問で複数個購入すると合計額から◯%の割引適用を設定できるプラグイン |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
akys |
投稿日時: 2018/8/6 15:42
対応状況: −−−
|
新米 登録日: 2018/8/6 居住地: 投稿: 2 |
商品不問で複数個購入すると合計額から◯%の割引適用を設定できるプラグイン 複数商品を購入すると、合計金額から◯%offできるプラグインを探しております。
https://www.ec-cube.net/products/detail.php?product_id=580 上記プラグインのように単一商品を複数個購入すると割引(商品単価を下げる)や、選定した特定の商品から複数個購入すると割引といったようなプラグインは見つけられたのですが、 商品不問で複数個購入する場合に合計金額から割引率を設定できるプラグインを見つけることが出来ませんでした。 もしご存知の方いたらご教授いただけますと幸いです。 <使用version> EC-CUBE 3.0.15 |
468 |
投稿日時: 2018/8/7 9:51
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 商品不問で複数個購入すると合計額から◯%の割引適用を設定できるプラグイン 複数商品を購入して、ボリュームディスカウントするようなプラグインは、私は今まで見かけた事はありません。
カスタマイズするしかないのではないでしょうか? (複数商品とは、全ての商品が対象という事でしょうか? また、割引条件は、個数?種類?によって段階的に切り替わるような少し複雑なものですか?) ざっくりとした想像ですが、 /Eccube/Service/CartService.php /Eccube/Service/ShoppingService.php を触る形になるかと思います。
|
akys |
投稿日時: 2018/8/7 13:40
対応状況: −−−
|
新米 登録日: 2018/8/6 居住地: 投稿: 2 |
Re: 商品不問で複数個購入すると合計額から◯%の割引適用を設定できるプラグイン シロハチさま
ご回答いただき誠にありがとうございます。 やはりプラグインはありませんか。。。 >複数商品とは、全ての商品が対象という事でしょうか? >また、割引条件は、個数?種類?によって段階的に切り替わるような少し複雑なものですか? こちらは全ての商品が対象で、商品を2つ以上(同じ商品でも別々の商品でも可)購入する場合、合計金額から◯%割引できるようにしたいという要件です。 「2つ以上で割引」以外の条件はないので段階的に切り替わるような形ではありません。 EC-CUBEのソースを深くまで追えていないので、金額に関わるカスタマイズに手が出しにくい状況で、諦めようか悩んでおります。。。 |
468 |
投稿日時: 2018/8/7 16:01
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: 商品不問で複数個購入すると合計額から◯%の割引適用を設定できるプラグイン ECCUBEの仕様上、
カートの中ページで値引き後の金額を表示させる事は難しいのでないかと思います。 (カート内の金額計算ロジックに値引きが考慮されていない為) ご注文内容のご確認ページを表示するで、値引きを計算させる方法のであれば、 /src/Eccube/Controller/ShoppingController.php function index()内のcreateOrder()で受注データを生成する時に受注データの値引き(dtb_order.discount)に値引き金額を計算してセットすれば実現できそうな気はします。
因みに、createOrder()の処理は、/src/Eccube/Service/ShoppingService.php 133行目付近に記述されています。 そこからさらにShoppingService内のメソッドを呼んで、順番に$Orderを組み立てていますので、 その辺りのソースは読んでいく必要があると思います。 ざっと確認したところ、 ShoppingService.phpのgetNewDetails()がカート内の商品から受注明細データを作り出している処理になるかと思いますので、 ここで商品が2個以上か判定し、値引き額を計算後、 $Order->setDiscount(値引き額); をreturn $Order;の前に記述する形で実現できそうな気はします。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |