説明させてください。一度に1つのカテゴリの深さを表示するカテゴリ構造を表示する必要があるWebサイトがあり、最終的な深さに達すると、そのカテゴリのエントリが表示されます。
私がこれを行うことができた唯一の方法は、gwcodecategoriesを使用することです。これを使用して、深さをurl構造に出力し、このセグメントを使用して、メインページに表示する深さをハードコーディングします。そうしないと、gwcodecategoriesがすべての深度を表示するため、現在のカテゴリに応じて、カテゴリの現在の深度を実際に動的に取得することはできません。
これはうまく機能し、すべての深さを循環できますが、最終的な深さに達したときに、gwcodeコードに{ifno_results}を追加することでそのカテゴリのエントリを出力するのは簡単だと思いました。ただし、URLに深さを追加したため、これは機能していません...URL構造は次のようになります。
www.website.com/products/list/(depth)/category/(category url title)
URLに関係なくエントリを表示するにはどうすればよいですか?これは私のコードです:
<div id="cat-filter">
<div id="products">
{exp:gwcode_categories
channel="product"
cat_url_title="{last_segment}"
depth="{if segment_3 == '1'}2{/if}{if segment_3 == '2'}3{/if}{if segment_3 == '3'}4{/if}{if segment_3 == '4'}5{/if}{if segment_3 == '5'}6{/if}"
style="linear"
id="category-items"
}
<div class="product-list{switch='|| no-margin'}" onClick="location.href='{title_permalink='products/list/category/{cat_url_title}'}'">
<a href="{path='products/view'}">
{exp:imgsizer:size src="{cat_image}" width="190"}
<img src="{sized}" width="{width}" alt="{title}" />
{/exp:imgsizer:size}
</a>
<div class="prod-spacer"></div>
<div class="product-info">
<a href="{title_permalink='products/view'}"><p>{cat_name}</p></a>
<a class="view-btn" href="{path='products/list/{depth}/category/{cat_url_title}'}">+ View Category</a>
</div>
</div><!-- END PRODUCTS LIST -->
{if no_results}
{embed="products/product_feed"}
{/if}
{/exp:gwcode_categories}
</div><!-- END PRODUCTS -->
</div><!-- END CAT FILTER -->