質問 > フロント機能 > 複数の商品一覧ページ |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
leoism |
投稿日時: 2009/5/22 14:03
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
複数の商品一覧ページ お世話になります。
カテゴリごとに商品の一覧ページを作ろうとしているのですが、 躓いたところがあるので、質問させてください。 (読みづらくてすみません) 目的:カテゴリごとに複数の商品ページを作りたい 見せ方:2カラムの構成で、左カラムにそれぞれの大カテゴリ内のサブカテゴリを表示、右カラムに一覧を表示 試したこと: 1.管理画面から新規ページ作成で商品一覧ページのテンプレートをコピー。ファイル名をxxx_list.phpにて保存 2.新規ブロック作成にて、サブカテゴリーへのリンクをhtmlで作成。リンク先アドレスは http://ドメイン名/user_data/xxx_list.php?category_id=xx としました。 3.この段階で表示を試してみたところ、レイアウトは思い通りなのですが、一覧を表示してくれません。 4.次に、/products/list.php の中身を作成した xxx_list.phpにまるっと上書きしてアップロード。 ブラウザで表示してみると、一覧の表示には成功したが、左カラムのレイアウトが /produts/list.phpの 内容でした。 5.テンプレートの読み込みが違ってるのかなと思い、data/class/pages/products/LC_Page_Products_List.php と data/class_extends/pages_extends/products/LC_Page_Products_List_Ex.phpを複製して、 LC_Page_Products_List.php内の // レイアウトデザインを取得 $layout = new SC_Helper_PageLayout_Ex(); $layout->sfGetPageLayout($this, false, "products/list.php"); を、 // レイアウトデザインを取得 $layout = new SC_Helper_PageLayout_Ex(); $layout->sfGetPageLayout($this, false, "user_data/glove_list.php"); LC_Page_Products_List_Ex.php内の require_once(CLASS_PATH . "pages/products/LC_Page_Products_List.php"); を require_once(CLASS_PATH . "pages/products/LC_Page_Products_List2.php"); に変更し、それぞれLC_Page_Products_List2.php,LC_Page_Products_List_Ex2.phpとして保存。 xxx_list.php内の require_once(CLASS_EX_PATH . "page_extends/products/LC_Page_Products_List_Ex.php"); を require_once(CLASS_EX_PATH . "page_extends/products/LC_Page_Products_List_Ex2.php"); に変更保存。 全てアップロードして、ブラウザ表示させると、 一覧は表示されて、左カラムが消え、 Warning: reset() [function.reset]: Passed variable is not an array or object in /home/worksystem/www/e-work-system.com/shop/data/class/helper/SC_Helper_PageLayout.php on line 63 Warning: Variable passed to each() is not an array or object in /home/worksystem/www/e-work-system.com/shop/data/class/helper/SC_Helper_PageLayout.php on line 64 上記のエラーが表示されました。 ここまで来たのですが、後どこをどうすれば・・・。 なんとなく、xxx_list.phpにlist.phpをまるっとコピーした所かなとも思うのですが、 どうしたら良いか、分かりません。 どなたか、分かる方よろしくご教授ください。 よろしくお願いいたします。 |
tao_s |
投稿日時: 2009/5/22 14:47
対応状況: −−−
|
仙人 登録日: 2008/8/20 居住地: 東京 投稿: 799 |
Re: 複数の商品一覧ページ list.phpはそのままで、LC_page_Product_Detail.phpを変更した方が良いと思います。
テンプレートを設定しているところをカテゴリによって切り替えた方が良いと思います。 $this->tpl_mainpage = "○○";みたいなところです。
|
kishik |
投稿日時: 2009/5/22 14:51
対応状況: −−−
|
仙人 登録日: 2009/4/3 居住地: 東京 投稿: 382 |
Re: 複数の商品一覧ページ ちょっと気になったことを補足すると、
ページは左と右に分かれているように見えますが、 それを表示させるためのロジック部分は共通の1つのものなので、 そこで左右それぞれ用にデータを作ってやるのがミソです。 すでにご存知でしたらすみません。 ----- カスタマイズ承ります http://ec-cube-mall.jp/ http://ec-cube.ec-orange2.jp/ http://wiki.ec-orange2.jp/ |
leoism |
投稿日時: 2009/5/25 9:53
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 複数の商品一覧ページ tao_sさま
回答ありがとうございます。 返事が遅れてすみませんでした。 LC_page_Product_Detail.phpを見てみたところ、 $this->tpl_mainpage = "○○";みたいなところは モバイルの詳細テンプレートを呼び出す記述と 規格部分のテンプレートを呼び出す記述しか見当たりませんでした。 また、リストページの左カラムの呼び出しを行うのに、Detail.php の修正でよろしいのでしょうか? できましたら、もう少し詳しく教えていただけますでしょうか。 よろしくお願いいたします。 |
leoism |
投稿日時: 2009/5/25 9:56
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 複数の商品一覧ページ kishikさま
ご回答ありがとうございます。 返事が遅れてすみませんでした。 >それを表示させるためのロジック部分は共通の1つのものなので、 >そこで左右それぞれ用にデータを作ってやるのがミソです。 なんとなくそうなんだろうと、理解できているのですが、 具体的に、どこを触ってよいのか分からなく、試行錯誤しているところです。 よろしければ、もう少し詳しく教えていただけますでしょうか。 よろしくお願いいたします。 |
leoism |
投稿日時: 2009/5/25 11:06
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 複数の商品一覧ページ お世話になります。
初歩的な事を質問させてください。 list.phpのテンプレートがlist.tplであると関連付けているのは どのファイル(またはデータベーステーブル)でしょうか? |
seasoft |
投稿日時: 2009/5/25 11:10
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 複数の商品一覧ページ 各ファイルで、インクルード (require) しています。
繋がりに関しては、下記が参考になるとよいのですが。 http://seasoft.jp1.cx/ec/tips/editfiles
|
leoism |
投稿日時: 2009/5/25 13:42
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 複数の商品一覧ページ Seasoftさま
いつも大変お世話になっています。 ありがとうございます。 >各ファイルで、インクルード (require) しています。 との事ですが、list.phpがインクルードしているファイルは require.phpとLC_Page_Products_List_Ex.phpだと思うのですが、 それらを辿って行って考えると、 list.php=list.tplを指示しているファイルは、 LC_Page_Products_List.phpもしくは、SC_Helper_PageLayout.php あたりなのかな、と思うのですがその考えで合っているのでしょうか? list2.php,list3.phpと作って行きたい場合、 list.php,LC_Page_Products_List_Ex.php,LC_Page_Products_List.php,list.tplを同ディレクトリ内で複製・リネームし、 これらのファイルのどこかで、list2.php=list2.tplであるように 修正できれば、商品一覧ページを複数設けることができると考えて大丈夫でしょうか。 |
seasoft |
投稿日時: 2009/5/25 15:42
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: 複数の商品一覧ページ あっ、他に一部は DB にもありました。
> LC_Page_Products_List.phpもしくは、SC_Helper_PageLayout.php > あたりなのかな、と思うのですがその考えで合っているのでしょうか? たしか、SC_Helper_PageLayout.php 辺りから参照していたと思いますが、テーブル「dtb_pagelayout」です。 > ist2.php,list3.phpと作って行きたい場合、 > list.php,LC_Page_Products_List_Ex.php,LC_Page_Products_List.php,list.tplを同ディレクトリ内で複製・リネームし、 > これらのファイルのどこかで、list2.php=list2.tplであるように > 修正できれば、商品一覧ページを複数設けることができると考えて大丈夫でしょうか。 そうですね。 ただ、色々な流れが全て正常に処理されるかは検証が必要な予感がします。 個人的には、list2.php よりも下の階層で分岐させたほうが良いような気もしますが、まぁケースバイケースなので、なんとも言い難い面もありますね。
|
leoism |
投稿日時: 2009/5/25 16:13
対応状況: −−−
|
常連 登録日: 2008/8/26 居住地: 投稿: 60 |
Re: 複数の商品一覧ページ ご回答ありがとうございます。
>たしか、SC_Helper_PageLayout.php 辺りから参照していたと思いますが、テーブル「dtb_pagelayout」です。 やっぱり! 何となくそこかなと思っていたのですが、触るのも少し怖かったので。。。 フィールド的にはFileNameで良いのでしょうか。 Tpl_Dirも気になるところですが。。。 ちょっと試してみます。 結果は、また報告させていただきます。 |
(1) 2 3 4 5 » |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |