質問 > フロント機能 > 商品に複数のオプションを設定する |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
osamuya |
投稿日時: 2014/1/22 13:54
対応状況: −−−
|
常連 登録日: 2013/2/4 居住地: 東京 投稿: 65 |
商品に複数のオプションを設定する お世話になります。
現在、商品に複数の(有料)オプションを付けて選択できるようにする機能を追加したいと思っています。過去に以下のスレッドがありました。 http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=9222&forum=6&post_id=44488#forumpost44488 いろいろやっている最中ですが、根本的に理解を深めたいと思いまして、 イチから順番に作業をしております。 mtb_optionsというテーブルを作成して、 /data/class_extends/page_extends/products/LC_Page_Products_Detail_Ex.php から読み込んで、 /data/Smarty/templates/default/products/detail.tpl で書きだすということをやっています。 うまく読み出すことはできたのですが、mtb_optionsにある複数のカラムから自由にデータを取り出すことができませんでした。 今々は、$arrPRODUCTOPSTIONSという配列に値をgetMasterDataを使って格納しています。この際、配列には何の指定もしていないのですが、nameというカラムの値が自動的に入ってきました。以下のような書き方をしています。 function init() { parent::init(); $masterData = new SC_DB_MasterData_Ex(); $this->arrPRODUCTOPSTIONS = $masterData->getMasterData('mtb_options'); var_dump($this->arrPRODUCTOPSTIONS); } カラムは、id,name,rank,priceと4つあるのですが、name以外の値を読み出すことができないのです。 もし、こちらわかる方がいましたらご教授いただけないでしょうか。 |
snitta |
投稿日時: 2014/1/23 8:15
対応状況: −−−
|
一人前 登録日: 2013/10/3 居住地: 島根県 投稿: 100 |
Re: 商品に複数のオプションを設定する SC_DB_MasterData は指定したテーブルのカラムのうち、任意の二つのカラムだけ取り出して連想配列として扱う設計になっているようです。
デフォルトでは id をキーに、name を値にした配列になっています。 osamuya 様の用途でしたら SC_Query#select() 辺りをご利用されるのが良いかと思います。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |