質問 > 管理機能 > 配送業者指定商品をカートに追加する場合の条件 |
管理機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
ashuz |
投稿日時: 2012/2/13 13:14
対応状況: −−−
|
新米 登録日: 2012/2/13 居住地: 投稿: 1 |
配送業者指定商品をカートに追加する場合の条件 PHPを勉強しながらカスタマイズに取り組んでいます。
今回、初めて質問させていただきます。よろしくお願いします。 [EC-CUBE]2.11.4 を利用しています。 今回、公式ガイドブック(黒)にある 「商品ごとに配送設定できるようにする」にあるカートに追加できるかどうかの条件を変更したいと考えています。 現在:配送業者指定商品は、同じ商品のみ購入可能 ※配送業者が同じでも、商品が違うとカートに入らない 変更:配送指定業者が同じ商品は購入可能 ※配送業者が同じなら、商品が違ってもカートに入れられる 商品IDで判定していると思うのですが、それを配送業者IDに変更したいと思っています。 色々と試行錯誤しながら、やってみたのですが上手くいきません。 アドバイスよろしくお願いします。 カートに追加可能かを LC_page_Product_Detail.php で判定しています。 if($product_id != null){ //配送限定商品購入時に他の通常商品と同時に購入していないかチェック $objCartSess = new SC_CartSession_Ex(); $objQuery = new SC_Query_Ex(); //カートの中身を取得 $cartItems =& $objCartSess->getAllCartList(); //選択した商品の配送限定商品IDを取得 $product = $objQuery->select("deliv_id","dtb_products","product_id = ?",array($product_id)); //選択した商品の商品タイプを取得 $product_class = $objQuery->select("product_type_id","dtb_products_class","product_id = ?",array($product_id)); //カゴに入れることが出来るか判定 //ダウンロード商品はチェックしない if($product_class[0]['product_type_id'] == 1){ //カートに商品がなければチェックしない if(count($cartItems[1])>0 ) { //配送限定商品の判定 if($product[0]['deliv_id']!=NULL || $product[0]['deliv_id']!=""){ //配列の先頭の要素を取得 $cartProduct = array_shift($cartItems[1]); //商品IDの取得 $cartProduct = $cartProduct['productsClass']['product_id']; //カゴに入っている商品と異なっているか if($cartProduct != $product_id ){ $objErr->arrErr['cartSum'] = '配送業者固定商品購入時はそれ以外の商品を同時に購入することが出来ません。' ; } }else{ //カゴに配送限定商品が入っていないか foreach($cartItems[1] as $val){ //配送IDの取得 $deliv_id = $objQuery->select("*","dtb_products","product_id = ?",array($val['productsClass']['product_id'])); //配送限定商品か if($deliv_id[0]['deliv_id'] != NULL || $deliv_id[0]['deliv_id'] != ""){ $objErr->arrErr['cartSum'] = '配送業者固定商品購入時はそれ以外の商品を同時に購入することが出来ません。' ; break; } } } } } } |
フラット表示 | 前のトピック | 次のトピック |
題名 | 投稿者 | 日時 |
---|---|---|
» 配送業者指定商品をカートに追加する場合の条件 | ashuz | 2012/2/13 13:14 |
Re: 配送業者指定商品をカートに追加する場合の条件 | ken5 | 2012/7/5 17:37 |
Re: 配送業者指定商品をカートに追加する場合の条件 | ymiyamura | 2013/1/23 10:03 |