[Frage] 2. Menu ebene aktiv. nur aktives element anzeigen, TYPO3-Version: -

  • nevsred nevsred
    R2-D2
    0 x
    113 Beiträge
    0 Hilfreiche Beiträge
    20. 11. 2013, 12:35

    Hallo

    ich habe ein umfangreiches Menü mit einer herausfordernden Menü-Konzept.

    im 1. Level sind die übergreifenden Punkte
    im 2. Level einzelne "Landingpages"

    nun soll das 1. Level ausgeblendet werden und ein Link zur Startseite erscheinen
    Ein weiteres Menü wird angezeigt und stellt dann die Unterseiten des aktiven Punkts von Level 2 als 3. und 4. Ebene dar.

    kann mir jemand da nen Ansatz nennen. wie man das machen würde.
    dem aktiven menüpunkt eine klasse zuweisen und mit javascript dann die anderen Sachen ein und ausblenden?

    gibt es ne schicke TS Idee?
    Das ganze soll auch ziemlich dynamisch sein, da weitere Punkte in Level 2 hinzu kommen können.

    Grüße Sven

  • Hilfreichster Beitrag

  • etux etux
    Jedi-Meister
    2 x
    360 Beiträge
    13 Hilfreiche Beiträge
    20. 11. 2013, 15:43 - Hilfreichster Beitrag

    Conditions kann man zwar auch verwenden, die eigene „Conditions“ vom HMENU dürften aber wesentlich locker die Aufgabe lösen – aus meiner Sicht ist HMENU das mächtigste Werkzeug von TYPO3.
    Hier ein Beispiel, was nicht auf Anhieb funktionieren muss - ich kenne den Seitenbaum nicht und getestet habe ich es auch nicht. o.O
    Daher müsste was nicht stimmt, angepasst werden. Kürzer und „eleganter“ dürfte der Code auch hin zu bekommen sein.

    1. lib.menu = COA
    2. lib.menu {
    3. 10 = COA
    4. 10 {
    5. if.isFalse.field = pid
    6. 10 = HMENU
    7. 10 {
    8. 1 = TMENU
    9. 1 {
    10. wrap = <ul>|</ul>
    11. NO {
    12. allWrap = <li>|</li>
    13. }
    14. }
    15. }
    16. }
    17. 20 = COA
    18. 20 {
    19. if.isTrue.field = pid
    20. 10 = HMENU
    21. 10 {
    22. special = list
    23. 1 = TMENU
    24. 1 {
    25. wrap = <p>|</p>
    26. NO {
    27. allWrap = |
    28. }
    29. }
    30. }
    31. }
    32. 30 = HMENU
    33. 30 {
    34. entryLevel = 1
    35. 1 = TMENU
    36. 1 {
    37. expAll = 1
    38. wrap = <ul>|</ul>
    39. NO {
    40. wrapItemAndSub = <li>|</li>
    41. }
    42. }
    43. 2 < .1
    44. 3 < .1
    45. }
    46. }


  • 1
  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    20. 11. 2013, 13:29

    Es gibt hier diverse Conditions die dir weiterhelfen könnten.
    Siehe "pidInRootLine" oder "pidInList" oder auch "treeLevel"

    God's in his heaven, all's right with the world

  • etux etux
    Jedi-Meister
    2 x
    360 Beiträge
    13 Hilfreiche Beiträge
    20. 11. 2013, 15:43

    Conditions kann man zwar auch verwenden, die eigene „Conditions“ vom HMENU dürften aber wesentlich locker die Aufgabe lösen – aus meiner Sicht ist HMENU das mächtigste Werkzeug von TYPO3.
    Hier ein Beispiel, was nicht auf Anhieb funktionieren muss - ich kenne den Seitenbaum nicht und getestet habe ich es auch nicht. o.O
    Daher müsste was nicht stimmt, angepasst werden. Kürzer und „eleganter“ dürfte der Code auch hin zu bekommen sein.

    1. lib.menu = COA
    2. lib.menu {
    3. 10 = COA
    4. 10 {
    5. if.isFalse.field = pid
    6. 10 = HMENU
    7. 10 {
    8. 1 = TMENU
    9. 1 {
    10. wrap = <ul>|</ul>
    11. NO {
    12. allWrap = <li>|</li>
    13. }
    14. }
    15. }
    16. }
    17. 20 = COA
    18. 20 {
    19. if.isTrue.field = pid
    20. 10 = HMENU
    21. 10 {
    22. special = list
    23. 1 = TMENU
    24. 1 {
    25. wrap = <p>|</p>
    26. NO {
    27. allWrap = |
    28. }
    29. }
    30. }
    31. }
    32. 30 = HMENU
    33. 30 {
    34. entryLevel = 1
    35. 1 = TMENU
    36. 1 {
    37. expAll = 1
    38. wrap = <ul>|</ul>
    39. NO {
    40. wrapItemAndSub = <li>|</li>
    41. }
    42. }
    43. 2 < .1
    44. 3 < .1
    45. }
    46. }

  • etux etux
    Jedi-Meister
    2 x
    360 Beiträge
    13 Hilfreiche Beiträge
    20. 11. 2013, 16:02

    [b]Nachtrag[/b]:
    Die Konfiguration von Oben habe ich gerade getestet. Bei mir funktioniert sie. Aber auch die folgende:

    1. lib.menu = COA
    2. lib.menu {
    3. 10 = HMENU
    4. 10 {
    5. special = list
    6. 1 = TMENU
    7. 1 {
    8. wrap = <ul>|</ul>
    9. NO {
    10. allWrap = <li>|</li>
    11. }
    12. CUR = 1
    13. CUR {
    14. doNotShowLink = 1
    15. after.cObject = HMENU
    16. after.cObject {
    17. 1 = TMENU
    18. 1 {
    19. NO {
    20. allWrap = <li>|</li>
    21. }
    22. }
    23. }
    24. }
    25. }
    26. }
    27. 20 = HMENU
    28. 20 {
    29. entryLevel = 1
    30. 1 = TMENU
    31. 1 {
    32. expAll = 1
    33. wrap = <ul>|</ul>
    34. NO {
    35. wrapItemAndSub = <li>|</li>
    36. }
    37. }
    38. 2 < .1
    39. 3 < .1
    40. }
    41. }

  • Chrissli Chrissli
    Jedi-General
    0 x
    1016 Beiträge
    28 Hilfreiche Beiträge
    20. 11. 2013, 16:37

    Und darum bin ich nur Ratsmitglied und du Meister #giggle#
    +2

    God's in his heaven, all's right with the world

  • etux etux
    Jedi-Meister
    0 x
    360 Beiträge
    13 Hilfreiche Beiträge
    20. 11. 2013, 17:26

    Danke Crissli, ganz lieb von Dir. :)
    Hehe. Ein Ratsmitglied müsste deutlich mehr darauf haben als ein Jedi-Meister. Oder mindestens genau so viel.
    Und das trifft bei Dir zu. Auch wenn Du bescheidener Weise vom Gegenteil zu überzeugen versuchst. ;)

  • nevsred nevsred
    R2-D2
    0 x
    113 Beiträge
    0 Hilfreiche Beiträge
    20. 11. 2013, 22:01

    krass, cool. vielen Dank. ich werde es ausprobieren und dann verändern wenn es nicht 100% passt.
    aber das ist mehr als ich erwartet habe. Danke.
    Conditions sind mir zu strict. also bei neuer Unterseite muss man wieder conditions neu anlegen.
    mit tMENU finde ich schon super.

  • 1