[Frage] Die Anzahl von Submenu-Einträgen in Bezug zum aktuellen Menülevel zählen TYPO3-Version: 6.2.7

  • sowas_aber_auch sowas_abe...
    TYPO3-Anwärter
    0 x
    5 Beiträge
    0 Hilfreiche Beiträge
    03. 11. 2015, 21:43

    Hallo,

    in dem Menü, das ich gerade Baue benötige ich bereits im ersten Level die Anzahl an Submenus.
    Das ist nötig, da das css eine Klasse in abhängigkeit von der Anzahl an (Sub-)Menüeinträgen hat.

    Beispiel: <li class="dropdown mega-menu-X">
    wobei X die Anzahl an Submenus ist.

    Ich habe schon viel gegooglet und bin auf etwas gestoßen, was nach einer kleinen Anpassung so aussieht:

    1. lib.test = COA
    2. lib.test {
    3.  
    4. # Save the output of numRows in the registervalue: "menuNumber"
    5. 10.menuNumber.numRows {
    6. table = pages
    7. select.pidInList = this
    8. }
    9.  
    10. # Retrieve the registervalue and display it.
    11. 20 = TEXT
    12. 20.dataWrap = <div>There are {register:menuNumber} subpages </div>
    13.  
    14. }
    15.  
    16. page.30 < lib.test

    Wenn ich für "this" eine konkrete Zahl angebe, zu der ich weiß dass diese 3 Unterseiten hat, dann wird im Text auch 3 ausgegeben. Schön und gut, mein Problem ist allerdings, dass ich nicht weiß, wie ich das ganze in mein Menü unterbringen soll.

    Mein Menü sieht bisher so aus:

    1. lib.testmenu31 = HMENU
    2. lib.testmenu31 {
    3. entryLevel = 0
    4.  
    5. 1 = TMENU
    6. 1 {
    7. expAll = 1
    8. wrap = <ul class="nav navbar-nav"> | </ul>
    9. noBlur = 1
    10.  
    11. NO = 1
    12. NO {
    13. wrapItemAndSub = <li> | </li>
    14. ATagTitle.field = title
    15. }
    16.  
    17. IFSUB = 1
    18. ATagBeforeWrap = 1
    19. linkWrap = | <b class="caret"></b>
    20.  
    21. 10.menuNumber.numRows {
    22. table = pages
    23. select.pidInList = 84
    24. }
    25.  
    26. wrapItemAndSub = <li class="dropdown mega-menu-{register:menuNumber}"> | </li>
    27. wrapItemAndSub.insertData = 1
    28. ATagTitle.field = title
    29. ATagParams = class="dropdown-toggle" data-toggle="dropdown" aria-expanded="true"
    30. }
    31.  
    32. ACT = 1
    33. ACT <.NO
    34.  
    35. }
    36.  
    37. 2 = TMENU
    38. 2 <.1
    39. 2 {
    40. expAll = 1
    41. wrap = <ul class="dropdown-menu"> | </ul>
    42. NO {
    43. doNotShowLink = 1
    44. wrapItemAndSub = <li class="one-column"> | </li>
    45. }
    46. IFSUB = 0
    47. }
    48.  
    49. 3 = TMENU
    50. 3 <.2
    51. 3 {
    52. expAll = 1
    53. wrap = <ul> | </ul>
    54. NO {
    55. doNotShowLink = 0
    56. wrapItemAndSub = <li class="nav-title"> | </li> |*| <li> | </li>
    57. }
    58. }
    59. }

    Aber es scheint so, als könnte er es nicht richtig verarbeiten. Im Quelltext wird als Ergebnis einfach Nichts eingefügt.

    Weiß jemand wie man das hinbekommt, oder eine alternative?

    Ich brauch ja eigentlich nur die Anzahl aller pid mit nummer X zum aktuellen uid X indem ich mich gerade befinde.

    Vielen Dank für eure Antworten


  • 1
  • 1