Eigene Seite aus Plugin Controller in Navigation anzeigen

Hallo zusammen.
Ich habe ein eigenes Plugin geschrieben, welches per Controller eine zusätzliche Seite zum Shop hinzufügt. Wie kann ich es erreichen, dass diese Seite im Menü angezeigt wird? Bei den Kategorien könnte man auf externe Seite verlinken verwenden, aber ist das die Lösung? Leider ist dann der Menüpunkt nicht als aktiv markiert bei Aufruf.

Warum denn nicht? Was spricht dagegen?

Prinzipiell funktioniert das schon so. Aber er markiert mir dann den Menüpunkt nicht als aktiv. Gibts da noch eine Lösung?

Verstehe ich gerade nicht (bin noch beim Kaffee trinken). Die Aktivierung wird doch im Backend vorgenommen? Dort einfach ein Häkchen setzen? Oder meinst du etwas völlig anderes?

Nein, meine im Frontend. Wenn du in der Navigation auf einen Menüpunkt klickst und die Seite aktiv ist, wird der Menüpunkt mit einer Farbe hervorgehoben.

Ah verstehe! Ja das hat leider Shopware bis heute noch nicht in den Griff bekommen. Habe ich mir noch gar nicht so genau angeschaut ob man hier etwas am Template machen kann.

Habe mal etwas rumprobiert:

{extends file="parent:frontend/index/main-navigation.tpl"}


{block name='frontend_index_navigation_categories_top_entry'}
  {if !$sCategory.hideTop}
  {if $smarty.server.REQUEST_URI|stristr:$sCategory.link}
    {$sCategory.flag = 1}
  {/if}
    <li class="navigation--entry{if $sCategory.flag} is--active{/if}" role="menuitem">
    {block name='frontend_index_navigation_categories_top_link'}
    <a class="navigation--link{if $sCategory.flag} is--active{/if}" href="{$sCategory.link}" title="{$sCategory.description}" aria-label="{$sCategory.description}" itemprop="url"{if $sCategory.external && $sCategory.externalTarget} target="{$sCategory.externalTarget}"{/if}>
    <span itemprop="name">{$sCategory.description}</span>
    </a>
    {/block}
    </li>
  {/if}
{/block}
1 Like

Perfekt, vielen Dank. So gehts :slight_smile:

Vielleicht noch nicht die beste Lösung, aber als Notlösung reicht es allemal :slight_smile:

1 Like