バージョン選択

フォーラム

メニュー

オンライン状況

26 人のユーザが現在オンラインです。 (18 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 26
もっと...

サイト内検索

質問 > フロント機能 > 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい

フロント機能

新規スレッドを追加する

スレッド表示 | 古いものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
ndamon
投稿日時: 2015/3/24 10:37
対応状況: −−−
半人前
登録日: 2013/11/29
居住地:
投稿: 21
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
yuh様

返信が遅くなってしまい、申し訳ございません。
無事に希望通りの動きをしているのを確認いたしました。
この度もありがとうございました。

親のカテゴリーIDの取得の部分など大変勉強になりました。


<!--{if $usecategory == 1}-->
あああ
<!--{elseif $usecategory == 2}-->
いいい
<!--{/if}-->

で分岐することも出来ました。

confirm.tplとLC_Page_Shopping_Confirm_Ex.phpにも
上記記載のソースで分岐させることも出来ました。
yuh
投稿日時: 2015/3/21 1:35
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい

<div class="category<!--{$usecategory}-->">
<input type="text" id="category<!--{$usecategory}-->" name="category<!--{$usecategory}-->" />
</div>


この<!--{$usecategory}-->の部分が親カテゴリIDが入ります。
ndamon
投稿日時: 2015/3/20 17:32
対応状況: −−−
半人前
登録日: 2013/11/29
居住地:
投稿: 21
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
yuh様

早速のご返信ありがとうございます。

ご提示頂きましたコードを、ソースに導入いたしましたが
親カテゴリIDをセットする箇所があると思うのですが、どこの箇所になりますでしょうか?

またpayment.tplの方は

<!--{if $objCartSess[$productTypeId][$i]["productsClass"]["product_id"] == 1}-->
<!--カート内商品の親カテゴリがIDが1なら-->
<div class="category1">
<input type="text" id="category1" name="category1"  />
</div>
<!--{elseif $objCartSess[$productTypeId][$i]["productsClass"]["product_id"] == 2}}-->
<!--カート内商品の親カテゴリがIDが2なら-->
<div class="category2">
<input type="text" id="category2" name="category2"  />
</div>
<!--{/if }-->

のように書くものとばかりと思っていたのですが、
仕組みが全く理解出来てない状況です。
後学のためにも、どのような仕組みかご教示願えませぬでしょうか?
yuh
投稿日時: 2015/3/20 14:55
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
SC_CartSession_Exに

  function isTargetProduct($productTypeId) {
       $max = $this->getMax($productTypeId);
       
        $objQuery =& SC_Query_Ex::getSingletonInstance();
        $HelperCategory = new SC_Helper_Category;
        $query = '
        SELECT
            category_id 
        FROM 
            dtb_product_categories
        WHERE
            product_id = ?
        LIMIT 1
       
       ';

       for($i = 0; $i <= $max; $i++) {
           if($this->cartSession[$productTypeId][$i]['cart_no'] != "") {
               $category_ary = $HelperCategory->getTreeTrail(SC_Query_Ex::getSingletonInstance()->getOne($query,array($this->cartSession[$productTypeId][$i]["productsClass"]["product_id"])),true);
               return $category_ary[0];
           }
       }
   }


これを追加で
LC_Page_Shopping_Payment_Exに

    function action(){
        parent::action();

        $objCartSess = new SC_CartSession_Ex();
        $this->usecategory = $objCartSess->isTargetProduct($this->cartKey);
    }

これを追加で、payment.tplに


<div class="category<!--{$usecategory}-->">
<input type="text" id="category<!--{$usecategory}-->" name="category<!--{$usecategory}-->" />
</div>

これを追加でできると思います。
ndamon
投稿日時: 2015/3/20 14:38
対応状況: −−−
半人前
登録日: 2013/11/29
居住地:
投稿: 21
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
yuh様

ご返信くださりありがとうございます。

大事なことを記載するのを忘れておりました。
http://xoops.ec-cube.net/modules/newbb/viewtopic.php?topic_id=15708&forum=10
で、ご相談いたしました内容の続きとなっておりまして、
カート内に入る商品は必ず一つのカテゴリのみとなる仕様となっております。

お手数お掛けいたしますがよろしくお願いいたします。
yuh
投稿日時: 2015/3/20 14:05
対応状況: −−−
登録日: 2013/1/9
居住地: 大阪
投稿: 1819
Re: 支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
親カテゴリが1の商品と親カテゴリが2の商品が入ってた場合にはどうするんですか?
ndamon
投稿日時: 2015/3/20 13:59
対応状況: −−−
半人前
登録日: 2013/11/29
居住地:
投稿: 21
支払方法選択画面にて、親カテゴリごとに追加テキストフィールドを表示したい
-------------------------------------------------------------
[EC-CUBE] 2.13.3
[レンタルサーバ] さくらVPS
[PHP] 5.3.3
[データベース] MySQL 5.1.73
[WEBサーバ] Apache
-------------------------------------------------------------

お世話になります。

支払方法選択画面(/shopping/payment.php)にて
現在のカゴ内にある商品の親カテゴリごとに
追加したテキストフィールドを表示させたいと考えております。

親カテゴリが1なら<div class="category1">〜</div>を表示
親カテゴリが2なら<div class="category2">〜</div>を表示

※商品はダウンロード商品のみの取り扱い

お手数ではございますが、ご教示くださいますようよろしくお願いいたします。

payment.tpl

<!--親カテゴリが1番なら-->
<div class="category1">
<input type="text" id="category1" name="category1"  />
</div>

<!--親カテゴリが2番なら-->
<div class="category2">
<input type="text" id="category2" name="category2" />
</div>


下記は特定商品のID判別なのですが、これを元に行えば出来そうな気が・・・

SC_CartSession.php

   function isTargetProduct($productTypeId,$productId) {
       $max = $this->getMax($productTypeId);
       for($i = 0; $i <= $max; $i++) {
           if($this->cartSession[$productTypeId][$i]['cart_no'] != "") {
               if( $this->cartSession[$productTypeId][$i]["productsClass"]["product_id"]==$productId){
                   return true;
               }
 
           }
       }
       return false;
   }


LC_Page_Shopping_Payment.php

$this->isHoge = $objCartSess->isTargetProduct($cart_key,$target_productId);
スレッド表示 | 古いものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は89,324名です
総投稿数は110,082件です

投稿数ランキング

1
seasoft
7367
2
468
3217
3
AMUAMU
2712
4
nanasess
2314
5
umebius
2085
6
yuh
1819
7
h_tanaka
1652
8
red
1570
9
mcontact
1304
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
799
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.