バージョン選択

フォーラム

メニュー

オンライン状況

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

サイト内検索

質問 > フロント機能 > カテゴリー部分のループを止めたい

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
arata
投稿日時: 2019/6/12 18:01
対応状況: −−−
半人前
登録日: 2019/2/6
居住地:
投稿: 20
カテゴリー部分のループを止めたい
[EC-CUBE]3.0.14 新規インストール
[レンタルサーバ]さくらのレンタルサーバ
[OS]MacOS10.14
[PHP]7.2.17
[データベース]MySQL 5.7
[WEBサーバ]Apache/2.4.39
[ブラウザ]Safari
[導入プラグインの有無]あれば導入プラグインを記載
[カスタマイズの有無]あまりカスタマイズしていません。
[現象]
こちらのサイトを現在構築しています。
https://agordonet.com/
カテゴリメニューを「ページ管理」の「レイアウト編集」を使い左に移し、それぞれにカテゴリのリンク先を指定しましたが、16行目の「ワークウェア」で終わらせたいのに、十数回メニューがループしてしまいます。メニューがループするのをやめさせたいのですが、どのようにすればよろしいでしょうか?category.twigのソースは以下です。

{% macro tree(Category) %}
<li><a href="{{ url('product_list') }}?category_id=19"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-tops.png">トップス (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=33"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-onepiace.png">ワンピース (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=24"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-bottoms.png">ボトムス (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=31"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-accessorys.png">アクセサリー (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=26"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-shoes.png">シューズ (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=30"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-shawl.png">ショール (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=14"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-bag.png">バッグ (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=28"><img src="{{ app.config.front_urlpath }}/img/categoryicons/womens-others.png">その他 (ウィメンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=15"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-tops.png">トップス (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=23"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-bottoms.png">ボトムス (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=34"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-shoes.png">シューズ (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=27"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-accessorys.png">アクセサリー (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=35"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-bag.png">バッグ (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=21"><img src="{{ app.config.front_urlpath }}/img/categoryicons/mens-others.png">その他 (メンズ)</a></li>
<li><a href="{{ url('product_list') }}?category_id=22"><img src="{{ app.config.front_urlpath }}/img/categoryicons/kids.png">キッズ</a></li>
<li><a href="{{ url('product_list') }}?category_id=17"><img src="{{ app.config.front_urlpath }}/img/categoryicons/workcloths.png">ワークウェア</a></li>
{% endmacro %}

<nav id="category" class="drawer_block pc">
<ul class="category-nav">
{% for Category in Categories %}
{{ _self.tree(Category) }}
{% endfor %}
</ul> <!-- category-nav -->
</nav>
468
投稿日時: 2019/6/12 21:53
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: カテゴリー部分のループを止めたい
{% for Category in Categories %}
{{ _self.tree(Category) }}
{% endfor %}
の部分がどのような挙動か理解されると
何故ループされるのか理解出来ると思います。

forは繰り返しを意味しており、
Categoriesの件数だけendforまでの間の処理を繰り返します。
この場合、第1階層のカテゴリの件数分、1件ずつ順番に繰り返します。
forからendforの間は今、繰り返しの対象となっているカテゴリを
Categoryでアクセス出来るようにします。
上記のソースは、treeマクロを繰り返す事を指示している事になります。
繰り返しが不要で全カテゴリのリンクを手入力されているようですので
上記のfor〜endforを<li>〜</li >に置き換えたらよいのではないでしょうか?
ただ、第2階層以下のカテゴリが表示されなかったり、
管理画面でカテゴリを追加しても、自動的に増えないかと思います。
(提示いただいたソースで既に第2階層は表示されないと思います)


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

arata
投稿日時: 2019/6/13 9:53
対応状況: −−−
半人前
登録日: 2019/2/6
居住地:
投稿: 20
Re: カテゴリー部分のループを止めたい
ありがとうございます。

{% for Category in Categories %}
{{ _self.tree(Category) }}
{% endfor %}

の部分を

<li>
{{ _self.tree(Category) }}
</li>

とすることで繰り返しが回避されました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


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

統計情報

総メンバー数は88,306名です
総投稿数は109,692件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
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.