Zum Inhalt springen

Menu nicht anzeigen wenn leer

Erstellt am 15. November 2007 · 1 Antwort · letzte Antwort am 15. November 2007

Tags: Frage

Phil1635536 ·

Hallo habe vollgendes Probelm ich habe ein MENU ab Entry level 1 und eins mit Entry level 0. Dabei kommt es vor das es in dem Menu mit Entry level 1 keine Einträge gibt und dann würde ich das gerne ausblenen.

lib.submenu = COA
lib.submenu.10 = COA
lib.submenu.10 {
  stdWrap.prefixComment = 2|Output of lib.submenu.10
  wrap = <ul id="submenu">|</ul>
// Should begin with 20, so the user can add something here.
  20 = TEXT
  20.stdWrap.prefixComment = 2|Output of lib.submenu.10.20
  20.data = leveltitle:1
  20.ifEmpty.cObject = TEXT
  20.ifEmpty.cObject.value = YAML CSS-Framework
  20.wrap = <li id="title">|</li>
  30 = HMENU
  30 {
    stdWrap.prefixComment = 2|Output of lib.submenu.10.30
    wrap = |
    entryLevel = {$subMenuEntryLevel}
    1 = TMENU
    1 {
      expAll = {$subMenuExpandToggle}
      noBlur = 1
      wrap = |
      IProcFunc = user_IProc_dfn
      NO = 1
      NO.ATagTitle.field = abstract // description // subtitle
      NO.allWrap = |<span class="hidden">.</span>
      NO.wrapItemAndSub = <li>|</li>
      NO.stdWrap.htmlSpecialChars = 1
      NO.linkWrap = {$mainMenuLinkWrap}
      NO.ATagBeforeWrap = 1
      CUR < .NO
      CUR = 1
      CUR.allWrap = <strong>|</strong><span class="hidden">.</span>
      CUR.wrapItemAndSub = <li>|</li>
      CUR.doNotLinkIt = 1
      CUR.stdWrap.htmlSpecialChars = 1
      IFSUB = 1
      IFSUB < .NO
      IFSUB.linkWrap = {$mainMenuIfsubLinkWrap}
    }
    2 < .1
    2.wrap = <ul>|</ul>
    3 < .1
    3.wrap = <ul>|</ul>
    4 < .1
    4.wrap = <ul>|</ul>
  }
}
// Delete entire menu if user has set the appropriate option
[globalVar = LIT:1 = {$subMenuOff}]
lib.submenu.10 >
[global]
// Delete headline of menu if user has set the appropriate option
[globalVar = LIT:1 = {$menuHeadlineOff}]
lib.submenu.10.20 >
[global]

Das hier würde aber immer noch das ausgeben wenn es sonst keine einträge gibt:
<ul id="submenu"><li id="title">z.B Home</li></ul>

Da ich in Typoscript nicht so fit bin habe ich mir mal die TYPO-Script Referenz angeschaut und if gestoßen das ein Menu nicht erstellt wird wenn die if-Bedingung nicht erfüllt ist so was wie das:
lib.submenu.10.30.if... da mit komme ich aber irgendwie nicht weiter

Ich habe mir über gelegt das ich ja eigentlich nur die Variable subMenuOff auf 1 setzen oder das "lib.submenu.10 >" machen muss wenn lib.submenu.10.30. leer ist aber mit ifEmpty komme ich da auch nicht weiter. Deswegen frage ich ob hier jemand eine Lösung sieht?

Dank im voraus
Mfg Phil1635536

ArminB ·

moin,

vergess das mit dem ifEmpty.

Packe den ganzen Bereich 20 = TEXT in ein stdWrap ins HMENU

bsp:

30 = HMENU
30.stdWrap.cObject = TEXT
30.stdWrap.cObject {
 # Hier dann der ganze andere Rest für deinen Title
}
# Hier gehts dann normal weiter

Armimn