質問 > フロント機能 > アイテム検索条件、フォームの追加方法 |
フロント機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
hana0102 |
投稿日時: 2018/4/27 15:53
対応状況: −−−
|
半人前 登録日: 2018/4/27 居住地: 投稿: 21 |
アイテム検索条件、フォームの追加方法 EC-CUBE3です。
アイテムの検索条件を増やしたいです。 現在はキーワード検索のみですが、 ドロップダウンでカテゴリー検索、 1000円~8000円 みたいな検索フォームを追加したいです。 プラグインを探してみたのですが、2系のものしかなく...。 EC-CUBEは過去に触ったことがなかったので困っています。 お分かりになる方がいらっしゃたら、ぜひご教示ください。 よろしくお願いします。 |
468 |
投稿日時: 2018/4/27 16:31
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: アイテム検索条件、フォームの追加方法 デフォルトでカテゴリのドロップダウンは商品検索ブロックに実装されているのですが、削除または未使用でしょうか?
商品検索ブロックを利用されている状況で検索条件を追加する場合、 以下のファイルに手を加える形になるかと思います。 /src/Eccube/Form/Type/SearchProductBlockType.php /src/Eccube/Repository/ProductRepository.php /src/Eccube/Resource/template/default/Blocksearch_product.twig ※テンプレートパッケージを利用されている場合は、/app/template/以下のテンプレートファイル キーワードを利用して、データを取り出している処理が上記のファイルにそれぞれ記述されていると思います。
|
hana0102 |
投稿日時: 2018/5/7 15:00
対応状況: −−−
|
半人前 登録日: 2018/4/27 居住地: 投稿: 21 |
Re: アイテム検索条件、フォームの追加方法 ご回答ありがとうございます。
検索条件の追加ではなく、フォーム自体を追加したいです。 添付画像のようなイメージです。 |
468 |
投稿日時: 2018/5/8 17:16
対応状況: −−−
|
神 登録日: 2008/10/26 居住地: 投稿: 3217 |
Re: アイテム検索条件、フォームの追加方法 symfony2の仕様で、1つのフォームと検索処理を追加する場合、複数のファイルを準備する必要があり、
ある程度、symfony2またはMVCフレームワークの知識が必要となりますが、ご経験などはございますか? フォーム自体を追加したい場合は、新しくFormTypeクラスとそれを表示する記述をテンプレートファイルに追記すれば良いかと思います。 /src/Eccube/Form/Type/SearchProductBlockType.php /src/Eccube/Resource/template/default/Blocksearch_product.twig をコピーして新しいファイルを追加する形になるかと思います。 また新しく追加したFormTypeクラスをtwigに渡す処理を、 そのページの表示を処理するControllerクラスのアクションに記述する必要があります。 次に検索ボタンを押した後の処理を記述するところも必要となりますが、 /src/Eccube/Controller/ProductController.phpに新しいアクションを追記する形になるかと思います。 (同Controllerのindexアクションをコピーして変更する形が手っ取り早いかと思います。) またアクションを追加した場合、routingを追加する必要がありますので、 /src/Eccube/ControllerProvider/FrontControllerProvider.php にroutingを追記します。 価格帯による検索処理は、 /src/Eccube/Repository/ProductRepository.phpのgetQueryBuilderBySearchData()メソッドに追記する形になるかと思います。 (コピーして新しいメソッドを追加しても問題無いと思います) 一つの塊として、デフォルトの商品検索ブロックの仕組みを読み解いていただくのが 仕組みを理解しやすいのではないかと思います。 ただ、ブロックを追加する場合、データベース内のdtb_blockテーブルのlogic_flg=1にセットする必要があります。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |