質問 > フロント機能 > SC_CartSession.phpの中でdtb_productsに入れた情報を利用したい |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
longview |
投稿日時: 2014/10/28 16:13
対応状況: −−−
|
半人前 登録日: 2013/6/4 居住地: 投稿: 18 |
SC_CartSession.phpの中でdtb_productsに入れた情報を利用したい ec-cube:2.13.1
まとめ買いで単価が安くなるようにしたいと考えております。 これは、商品全体で一律%、一律価格を安くするのではなく、 商品ごとに○個以上買ったら、単価△円になるというものです。 ※○個以上も商品ごとに異なります。 商品詳細ページに表示するため、dtb_productsに set_price:まとめ買い時の単価 set_quantity:まとめ買いになる個数 を登録しました。 商品詳細ページや管理画面にも反映されています。 ここからカートに入れた場合、 quantity >= set_quantity(購入数がまとめ買いになる個数以上の場合)なら、単価をprice02からset_price に変更したいと考えております。 SC_CartSession.phpの「商品種別ごとにカート内商品の一覧を取得する」のgetCartList内の $price = $this->cartSession[$productTypeId][$i]['productsClass']['price02'];部分で price02ではなくて、dtb_productsから引張ってきたset_priceを入れれば、注文完了・受注情報・MYページに単価として引き継がれることは分かりました。 ただ、SC_CartSession.php内でset_priceとset_quantityを利用できるようにする方法が分かりません。 教えていただけないでしょうか? よろしくお願いいたします。 |
yuh |
投稿日時: 2014/10/28 17:39
対応状況: −−−
|
神 登録日: 2013/1/9 居住地: 大阪 投稿: 1819 |
Re: SC_CartSession.phpの中でdtb_productsに入れた情報を利用したい SC_CartSessionの
getCartListが実行されたタイミングで cartSessionに商品のデータが入ります。 商品データを読み出しているのは SC_Product_ExのgetDetailAndProductsClassで その中でgetDetailとgetProductsClassを読み出しているので、 alldtlSQLに項目(set_price、set_quantity)を追加するとSC_CartSessionで使えるようになると思います。 |
longview |
投稿日時: 2014/10/28 19:03
対応状況: −−−
|
半人前 登録日: 2013/6/4 居住地: 投稿: 18 |
Re: SC_CartSession.phpの中でdtb_productsに入れた情報を利用したい yuh様ありがとうございます。
解決いたしました。
上記は項目追加の際に既に登録済みでした。 $price = $this->cartSession[$productTypeId][$i]['productsClass']['set_price'];と書くべきところを $price = $this->cartSession[$productTypeId][$i]['set_price'];と書いていたのが原因でした。 あとは、条件式を使って実現することができました。 カート内の+−ボタンで数量を増減させても、ちゃんとその都度単価が変わってくれました。 |
longview |
投稿日時: 2014/10/28 19:06
対応状況: 解決済
|
半人前 登録日: 2013/6/4 居住地: 投稿: 18 |
Re: SC_CartSession.phpの中でdtb_productsに入れた情報を利用したい すみません。
解決済みにし忘れました。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |