Ich würde gerne eine foreach-Schleife und eine if-Abfrage kombinieren, bekomme es aber nicht hin. Bin noch nicht so bewandert mit Smarty.
Situation: Ich nutze das Advanced Menü. Beim Hover über einen Menüpunkt geht darunter ja ein Container auf mit Inhalt (Kategorietext und Unterkategorien).
Wenn ich eine if-Abfrage einbaue, so wie ich es unten gemacht habe, dann stimmt bei mir die Zuordnung der Kategorie mit dem Inhalt in dem Container nicht mehr.
Der Textinhalt eines anderen Containers (einer anderen Kategorie) wird mir in der “gehoverten” Kategorie angezeigt.
Originaler Quelltext:
{foreach $sMainCategories as $sCategory}
{block name=‘frontend_index_navigation_categories_top_entry’}
{if !$sCategory.hidetop}{$sCategory.description}
{/if}
{/block}
{/foreach}
So wie ich dachte, dass es sein muss:
{foreach $sMainCategories as $sCategory}
{if $sCategory.attribute.category_yes_no != 1 }
{block name=‘frontend_index_navigation_categories_top_entry’}
{if !$sCategory.hidetop}{$sCategory.description}
{/if}
{/block}
{/if}
{/foreach}
Wie muss ich die foreach-Schleife und die if-Anweisung richtig kombinieren?
lg
Wilo
Der gesamte Code in der file main-navigation sieht so aus:
{strip}
{block name='frontend_index_navigation_categories_top_home'}
{s name='IndexLinkHome' namespace="frontend/index/categories_top"}{/s}
{/block}
{block name='frontend_index_navigation_categories_top_before'}{/block}
{foreach $sMainCategories as $sCategory}
{block name='frontend_index_navigation_categories_top_entry'}
{if !$sCategory.hidetop}
{$sCategory.description}
{/if}
{/block}
{/foreach}
{block name='frontend_index_navigation_categories_top_after'}{/block}
{/strip}