質問 > 管理機能 > カテゴリの一覧、レイアウト管理でのブロック追加と、直接includeの違い |
管理機能
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
miyamoto |
投稿日時: 2017/2/4 8:01
対応状況: −−−
|
新米 登録日: 2017/2/4 居住地: 投稿: 9 |
カテゴリの一覧、レイアウト管理でのブロック追加と、直接includeの違い お世話になります。
「EC-CUBE3でブロックを追加する方法」 http://spot-web.jp/blog/2735/ 上記ページを参考に、カテゴリブロック(2)を作成いたしました。 しかし、そのブロックは、ページ管理 > レイアウト編集(管理)にて 挿入すると正常に表示されるのですが、ページ編集のblock mainの中で、 {% block main %} {{ include('Block/main_menu.twig') }} {% endblock %} と、直接 include すると、何も表示されなくなります。 レイアウトの編集でブロックをドラッグドロップでmain block以外の場所に置いた場合は期待通りの結果なのですが、どうしてもmain blockの中に設置したいので直接 main blockからインクルードする方法を選びました。 ご存じの方がおりましたら、ご教授のほどお願いいたします。 |
umebius |
投稿日時: 2017/2/4 9:40
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: カテゴリの一覧、レイアウト管理でのブロック追加と、直接includeの違い Block/main_menu.twigの中身はどうなっているのでしょうか?
Categoryブロックのコピペですか? それだと{{ include('Block/main_menu.twig') }}ではCategoriesという変数が渡っていないので何も表示されません。 下記のように書けば良いですね。あまりブロック化する意味はないですが。。
あるいは、includeせず、main内の表示したい部分に下記を直接書いても良いですね。ブロック登録自体が不要になります。
|
miyamoto |
投稿日時: 2017/2/4 13:15
対応状況: −−−
|
新米 登録日: 2017/2/4 居住地: 投稿: 9 |
Re: カテゴリの一覧、レイアウト管理でのブロック追加と、直接includeの違い umebiusさん、返信ありがとうございます。
main_menu.twigの中は、Categoryブロックをもとに、 コントローラー名とreturnするtwigファイル名を変更しただけで、 変数名などはいじっていません。
どちらの方法でも無事表示できました。新規で作るページにカテゴリー商品情報を表示することが最終目的で、この方法からできそうな気がして取り組んでおります。ありがとうございました。 |
umebius |
投稿日時: 2017/2/4 22:28
対応状況: −−−
|
神 登録日: 2016/7/22 居住地: 投稿: 2085 |
Re: カテゴリの一覧、レイアウト管理でのブロック追加と、直接includeの違い どこからincludeされるのか分からなかったので、説明の簡略化のため
app['eccube.repository.category'].findBy( { Parent : null} , { rank : 'DESC' }) と書きましたが、本来はこの部分はコントローラから渡してやり、twigはシンプルにするのが通常の書き方です。 {% include "Block/main_menu.twig" with { Categories : Categories } %}
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |