質問 > フロント機能 > 販売価格を複数設定したときのカートの計算 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
m-rei |
投稿日時: 2011/8/16 17:39
対応状況: −−−
|
新米 登録日: 2011/8/16 居住地: 投稿: 3 |
販売価格を複数設定したときのカートの計算 初めまして。
現在ver.2.11.1をMAMPをインストールしたmacでカスタマイズをしております。 会員をデフォルトの仮会員、本会員の他に特別会員を増やしました。 また、商品の価格もprice03、price04を追加するところまでは出来たのですが、カート内での計算が上手くいきません。 カート内でのログイン判定を行い <!--{$item.productsClass.price02|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円 をprice03,price04に変更して対応しようと思いましたが値が入っていないようです。 $item.productsClass.はどこで設定するのでしょうか? 2.4系では確かSC_Helper_DB.phpで設定した記憶があるのですが・・・ また、他にもっとよい方法がありましたらご教示頂ければ幸いです。よろしくいお願い致します。 |
shutta |
投稿日時: 2011/8/16 19:51
対応状況: −−−
|
仙人 登録日: 2010/2/4 居住地: 関西 投稿: 835 |
Re: 販売価格を複数設定したときのカートの計算 /data/class/pages/cart/LC_Page_Cart.phpだと、
$this->cartItems =& $objCartSess->getAllCartList(); の部分でセットされています。 で、テンプレート部分(/data/Smarty/templates/default/cart/index.tpl)では、 <!--{foreach from=$cartItems[$key] item=item}--> で、$itemに渡ってくるようになっていますね。 /data/class/SC_CartSession.php の getAllCartListとか、getCartListあたりを弄ってみるのが良いような気がします。
|
m-rei |
投稿日時: 2011/8/17 17:54
対応状況: −−−
|
新米 登録日: 2011/8/16 居住地: 投稿: 3 |
Re: 販売価格を複数設定したときのカートの計算 shutta様
ご返信頂きありがとうございます。 質問の件はカートページで会員のステータスを読み込めておらず、条件分岐が出来ていなかったのが原因のよう getValue('status')をして会員ステータスを読み込むことで <!--{$item.productsClass.price03|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円 <!--{$item.productsClass.price04|sfCalcIncTax:$arrInfo.tax:$arrInfo.tax_rule|number_format}-->円 ともに正常に表示されるようになりました。 shutta様のおっしゃる通り、/data/class/SC_CartSession.phpでカート内の計算を行っているようですが L316辺りの$priceにデフォルトだとprice02が入ってしまうのですが、これをstatusが2のときはprice03を stausが3のときにはprice04を入れたいのですがどのようにすればよろしいでしょうか? PHP初心者で問い合わせフォームくらいしか作ったことがないレベルですが、ヒントだけでも頂ければ幸いです。 よろしくお願い致します。 |
shutta |
投稿日時: 2011/8/17 18:25
対応状況: −−−
|
仙人 登録日: 2010/2/4 居住地: 関西 投稿: 835 |
Re: 販売価格を複数設定したときのカートの計算 そのまんまかもしれませんが、SC_CartSession.phpのgetCartList中の
の部分をstatusに応じて、price03,price04に差し替えるようにすれば良いのではないでしょうか。
|
m-rei |
投稿日時: 2011/8/29 14:45
対応状況: −−−
|
新米 登録日: 2011/8/16 居住地: 投稿: 3 |
Re: 販売価格を複数設定したときのカートの計算 ご返信ありがとうございます。
ご指摘の箇所を $objCustomer = new SC_Customer(); $objCustomer->isLoginSuccess(); $customerRank = $objCustomer->getValue('status'); if ($customerRank == "2") { $rankprice = 'price03'; } else { if ($customerRank == "3") { $rankprice = 'price04'; } else { $rankprice = 'price02'; } } $price = $this->cartSession[$productTypeId][$i]['productsClass'][$rankprice]; $this->cartSession[$productTypeId][$i]['price'] = $price; とすることで上手く動くようになりました。 ありがとうございました。 |
ricarica |
投稿日時: 2011/8/31 15:55
対応状況: −−−
|
常連 登録日: 2011/8/22 居住地: 投稿: 48 |
Re: 販売価格を複数設定したときのtplファイルでのstatus判定について いろいろ探していたら見つけました。
そこで、質問させていただきます。 私も販売価格を増やしているのですが、detail.tplでstatusによって、表記を変えようとして奮闘してます。 ログイン判定に関しては、わかったのですが、以下の販売価格と会員価格を IFを使って、status が"2" のときと"3"のときで 下記を切り替えたいのです。 どうか詳しく教えていただけないでしょうか。 ======================================== <!--★販売価格★--> <div class="sale_price"><!--{$smarty.const.SALE_PRICE_TITLE}-->(税込): <span class="price"> <span id="price02_default"> <!--{if $arrProduct.price02_min == $arrProduct.price02_max}--> <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> <!--{else}--> <!--{$arrProduct.price02_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$arrProduct.price02_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> <!--{/if}--> </span><span id="price02_dynamic"></span> 円 </span> </div> <!--★会員価格★--> <div class="sale_price"><!--{$smarty.const.SALE_PRICE03_TITLE}-->(税込): <span class="price"> <span id="price03_default"> <!--{if $arrProduct.price03_min == $arrProduct.price03_max}--> <!--{$arrProduct.price03_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> <!--{else}--> <!--{$arrProduct.price03_min|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}-->〜<!--{$arrProduct.price03_max|sfCalcIncTax:$arrSiteInfo.tax:$arrSiteInfo.tax_rule|number_format}--> <!--{/if}--> </span><span id="price03_dynamic"></span> 円 </span> </div> ======================================================= php勉強して間もないのですが、宜しくお願いします。 eccube ver2.11.1 MYSQLです |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |