Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 15. März 2014 10:07

ampelmann
probiert CMS/ms aus
Registriert: 24. Januar 2012
Beiträge: 35

[GELÖST] Div - Block nicht darstellen, wenn leer

Hallo,

ich habe einen Block, wo das vertikale Menü eingesetzt wird:

<div id="d4k">
   <nav class="ym-vlist">
    {menu start_level ="2" collapse="1" template="minimal_menu.tpl"}
   </nav>
</div>

Nun möchte ich im HTML-Output dieses Konstrukt aber nur darstellen, wenn es ein zweites Level an Menüelementen gibt.

Geht so etwas mit smarty, dass die number of levels ausgelesen werden können?


Dank im Voraus!

Beitrag geändert von ampelmann (15. März 2014 10:36)

Offline

#2 15. März 2014 14:08

Klenkes
Server-Pate
Ort: 89428 Syrgenstein
Registriert: 17. Dezember 2010
Beiträge: 1.437

Re: [GELÖST] Div - Block nicht darstellen, wenn leer

Warum packst du nicht dieses Konstrukt in eine Menütemplate:

<div id="d4k">
   <nav class="ym-vlist">

... Menülogik...

 </nav>
</div>

Und rufts das Ganze dann so auf:

{tbtools::getRootAlias($page_alias, 'rootalias')}
{menu childrenof=$rootalias template="minimal_menu.tpl"}

Um an die Variable $rootalias zu kommen, musst du das Modul Toolbox installieren. Schadet sowieso nie!

Damit wird nur was ausgegeben wenn es auch Kindelemente gibt.

Offline

#3 15. März 2014 19:39

ampelmann
probiert CMS/ms aus
Registriert: 24. Januar 2012
Beiträge: 35

Re: [GELÖST] Div - Block nicht darstellen, wenn leer

Ja Danke, das ist eine Idee.

So richtig glücklich bin ich damit nicht, weil ich dann wieder Zusatzmodule brauche. Ist dass auch noch anders hinzukriegen? Smarty soll doch so mächtig sein.

LG.

Offline

#4 16. März 2014 07:42

Andynium
Moderator
Ort: Dohna / SN / Deutschland
Registriert: 13. September 2010
Beiträge: 7.018
Webseite

Re: [GELÖST] Div - Block nicht darstellen, wenn leer

Die Lösung ist eigentlich schon im Menü Template enthalten

Du musst einfach das div ins Menü Template holen und nach der if Anweisung einbauen.

Offline

#5 16. März 2014 12:05

ampelmann
probiert CMS/ms aus
Registriert: 24. Januar 2012
Beiträge: 35

Re: [GELÖST] Div - Block nicht darstellen, wenn leer

cyberman schrieb:

Die Lösung ist eigentlich schon im Menü Template enthalten

Du musst einfach das div ins Menü Template holen und nach der if Anweisung einbauen.

Spitze, das probiere ich doch einmal aus. Vielen Dank.

Offline