Zum Inhalt springen

Menüpunkt mit TS wieder einblenden

Erstellt am 3. Februar 2012 · 10 Antworten · letzte Antwort am 9. Februar 2012

Tags: Frage

Typo3Einsteiger ·

Hallo, ich habe einen Menüpunkt,
den ich ganz normal über "Seiteneigenschaften" im Menü verborgen habe.

Nun würde ich diesen Menüpunkt aber gerne wieder per TS einblenden. Geht das irgendwie, das ich diesen Wert per TS wieder auf visible setze oder so?

Hintergrund: Ich möchte gerne in der mobilen Version meiner Internetseite bestimmte Menüpunkte wieder einblenden.

Ich wäre für jede Hilfe sehr dankbar.

Gruß und ein schönes WE

Typo3Einsteiger ·

Danke für deinen Post, aber das ist nicht genau was ich suche.
Ich bräuchte eine Anweisung, mit der ich ganz bestimmte Seiten per TS einblenden kann und nicht alle.

Geht das irgendwie?

Gruß

igorshmigor ·

Ach so. Oh je, das geht wahrscheinlich nur mit PHP. Z.B. indem Du Dein Menü als special-Typ "userdefined" deklarierst oder vielleicht auch mit einer IProcFunc, die Du auf das TMENU anwendest. Aber das ist so aufwändig, dass ich mir nicht die Mühe machen werde, eine Lösung zu kreieren.

igorshmigor ·

Oh warte, ich sehe gerade in der offiziellen Doku, dass doNotShowLink auch stdWrap unterstützt, das stand in meinem "TypoScript kurz & gut" nicht drin.
Dann besteht die Möglichkeit, includeNotInMenu=1 zu setzen und doNotShowLink dynamisch so zu generieren, dass es auf 1 gesetzt ist, wenn das Feld "nav_hide" gleich 1 ist, es sein denn die UID der Seite ist soundso.
Vielleicht habe ich später die Zeit, was in TypoScript zu basteln und zu testen.

igorshmigor ·

So geht's:

lib.mainnav=HMENU
lib.mainnav{
  includeNotInMenu=1
  1.NO.doNotShowLink.cObject=CASE
  1.NO.doNotShowLink.cObject{
    key.field=uid
    default=TEXT
    default.field=nav_hide
    39=TEXT
    39.value=0
  }
}

39 ist hier nur eine Beispiel-Seiten-ID, die Du durch die ID der gewünschten Seite ersetzen musst.
Du kannst beliebig viele IDs nach dem gleichen Schema hinzufügen.

igorshmigor ·

Mögliche Antworten wären jetzt:

a)
Mensch super, vielen Dank für Deine Mühe, das klappt

b)
Hmm, nein, funktioniert leider auch nicht

oder c)
Ich verstehe das nicht so ganz

Du kannst die Texte copy-pasten. Wenn das zuviel Anstrengung ist, schreib einfach nur den Buchstaben, also z.B.: b)

Typo3Einsteiger ·

:-), entschuldige bitte aber ich bin noch nicht dazu gekommen das durch zu probieren. Aber jetzt!
also ich nehme zum Teil a), also vielen Dank für deine Mühe :-)
muss aber trotzdem auch b) nehmen, da es leider nicht funktioniert.

Wenn ich das TS verwende das du gepostet hast, dann werden bei mir einfach alle Menüpunkte eingeblendet. Die Eingrenzung mit den ID's funktioniert bei mir leider nicht.

Typo3Einsteiger ·

Folgendes TS habe ich verwendet, NUN FUNKTIONIERTS.

page.10.marks{
  NAV = HMENU  
  NAV.1 = TMENU
  NAV.1.wrap = <ul id="menu">|</ul>

  NAV.includeNotInMenu=1
  NAV.1.NO.doNotShowLink.cObject=CASE
  NAV.1.NO.doNotShowLink.cObject{
    key.field=uid
    default=TEXT
    default.field=nav_hide
    221=TEXT
    221.value=0
  }
    
  # Normaler Status des Links
  NAV.1.NO = 1
  NAV.1.NO {
    10 = TEXT
    10.text.field = title
    wrapItemAndSub = <li>|</li>
    ATagTitle.field = title
  }
    
  # Selektierter Status des Links
  NAV.1.ACT = 1
  NAV.1.ACT < MOBILNAV.1.NO
  NAV.1.ACT {
    wrapItemAndSub = <li class="active">|</li>
    ATagTitle.field = title
  }
}

Vielen Dank für deine Hilfe

Gruß

Typo3Einsteiger ·

Ich erhalte jetzt aber leider auch ein paar leere li's <li></li>
Ich denke mal das dies irgendwie mit den verborgenenen Menüpunkten zusammen hängt.

Könnte ich das noch irgendwie optimieren?