正しいことを求めているかどうかさえわかりません。私が持っているのはカテゴリのリストであり、それらのカテゴリはアイテムをフィルターするためのリンクになります。これが私が始めていることです:
{foreach from=$items item=entry}
{strip}
{foreach from=$entry->categories item='one_category'}
{foreach from=$categories item='one'}
{if $one_category.name == $one.name}
{$one.name}
{$one.name|munge_string_to_url}
{/if}
{/foreach}
{/foreach}
{/strip}
{/foreach}
より良いバージョンは次のとおりです。
したがって、これはページで使用されるすべてのインスタンスをリストします。インスタンスがある場合、インスタンス 1x をリストすることを意図しています。
<ul>
<li><a class="active" href="#" data-filter="*">All</a></li>
{foreach from=$items item=entry}
{foreach from=$categories item='one'}
<li><a href="#" data-filter=".{$one.name|munge_string_to_url}">{$one.name}</a></li>
{/foreach}{/foreach}
</ul>
これはすべての項目を表示しますが、正しくありません。1 つのカテゴリに 20 個の記事が割り当てられている場合は 20 回、1 つのカテゴリに 5 個の記事が割り当てられている場合は 5 回表示されます。一致する文字列ごとに1つずつ必要です。何をすべきかについての手がかりではありません。あなたが提供できる洞察をありがとう。