[Frage] Wie Hinweis / Zeichen / Markierung im Menüeintrag anzeigen, wenn Unterseiten vorhanden sind? [Gelöst] TYPO3-Version: 6.1.1

  • OpenSoul OpenSoul
    Padawan
    0 x
    35 Beiträge
    0 Hilfreiche Beiträge
    07. 10. 2013, 17:33

    Hallo an alle,

    habe folgende Frage:

    Wie kann ich für einen Menüeintrag ein Zeichensetzen, sobald es für den entsprechenden Eintrag noch Unterseiten gibt. Also stelle mir das wie folgt vor:

    1. ---- Mein Menü ---
    2. Menüpunkt_1
    3. Menüpunkt_2 >>
    4. Untermenüpunkt_1
    5. Untermenüpunkt_2
    6. Menüpunkt_3

    Das hier ist der TS-Code für mein aktuelles Menü ohne Markierung:

    1. nav = HMENU
    2. nav {
    3. wrap = <ul class="navilist">|</ul>
    4. 1 = TMENU
    5. 1 {
    6. NO = 1
    7. NO.stdWrap2.wrap = <li class="naviitem">|</li>
    8. CUR = 1
    9. CUR < .NO
    10. ACT = 1
    11. ACT < .NO
    12. SPC = 1
    13. SPC {
    14. stdWrap2.wrap = <li class="titel">|</li>
    15. }
    16. }
    17.  
    18. 2 = TMENU
    19. 2 {
    20. NO = 1
    21. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;|</li>
    22. CUR = 1
    23. CUR.stdWrap2.wrap = <li class="current2">&nbsp;&nbsp;|</li>
    24. ACT = 1
    25. ACT < .NO
    26. }
    27.  
    28. 3 = TMENU
    29. 3 {
    30. NO = 1
    31. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    32. CUR = 1
    33. CUR.stdWrap2.wrap = <li class="current3">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    34. ACT = 1
    35. ACT < .NO
    36. }
    37. 4 = TMENU
    38. 4 {
    39. NO = 1
    40. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    41. CUR = 1
    42. CUR.stdWrap2.wrap = <li class="current4">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    43. ACT = 1
    44. ACT < .NO
    45. }
    46. 5 = TMENU
    47. 5 {
    48. NO = 1
    49. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    50. CUR = 1
    51. CUR.stdWrap2.wrap = <li class="current5">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    52. ACT = 1
    53. ACT < .NO
    54. }
    55. }

    Müsste ja irgendwie eine if-Abfrage mit einbauen, jedoch weiß ich leider nicht, wie ich das mache... Hat jeman ein paar Tipps für mich?

  • OpenSoul OpenSoul
    Padawan
    0 x
    35 Beiträge
    0 Hilfreiche Beiträge
    08. 10. 2013, 18:31 - Lösung

    Wie ich eben feststellen musste, brauche ich CUR nicht... Danke! Nun läuft es so, wie ich mir das vorgestellt habe :)

    Hier der funktionsfähige Code für das Menü:

    1. nav = HMENU
    2. nav {
    3. wrap = <ul class="navilist">|</ul>
    4. 1 = TMENU
    5. 1 {
    6. NO = 1
    7. NO.stdWrap2.wrap = <li class="naviitem">|</li>
    8.  
    9. ACT = 1
    10. ACT.stdWrap2.wrap = <li class="naviitem">|</li>
    11.  
    12. SPC = 1
    13. SPC.stdWrap2.wrap = <li class="titel">|</li>
    14.  
    15. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    16.  
    17. IFSUB = 1
    18. IFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    19. }
    20.  
    21. 2 = TMENU
    22. 2 {
    23. NO = 1
    24. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;|</li>
    25.  
    26. ACT = 1
    27. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;|</li>
    28.  
    29. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    30.  
    31. IFSUB = 1
    32. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    33. }
    34.  
    35. 3 = TMENU
    36. 3 {
    37. NO = 1
    38. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    39.  
    40. ACT = 1
    41. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    42.  
    43. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    44.  
    45. IFSUB = 1
    46. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    47. }
    48. 4 = TMENU
    49. 4 {
    50. NO = 1
    51. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    52.  
    53. ACT = 1
    54. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    55.  
    56. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    57.  
    58. IFSUB = 1
    59. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    60. }
    61. 5 = TMENU
    62. 5 {
    63. NO = 1
    64. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    65.  
    66. ACT = 1
    67. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    68.  
    69. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    70.  
    71. IFSUB = 1
    72. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    73. }
    74. }


  • 1
  • jenses jenses
    Flash Gordon
    0 x
    3087 Beiträge
    106 Hilfreiche Beiträge
    08. 10. 2013, 10:05

    Schau doch mal in die TS Ref (Typoscript Reference),
    da findest du dann auch den Menüzustand IFSUB - der Name ist Programm...

  • OpenSoul OpenSoul
    Padawan
    0 x
    35 Beiträge
    0 Hilfreiche Beiträge
    08. 10. 2013, 11:25

    Dank dir schon mal für deinen Hinweis. Wenn ich das hier verwende:

    IFSUB = 1
    IFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>

    sieht das auch so aus, wie ich das haben wollte, allerdings auch nur sollge ich nicht auf den Menüeintrag mit den zwei Pfeilen klicke, klicke ich darauf, verschwinden diese, vermutlich, weil dann "CUR" greift... kann ich IFSUB auch irgendwie in einer IF-Abfrage verwenden?

    Hier der gänderte Code für die erste Ebene:

    1. nav = HMENU
    2. nav {
    3. wrap = <ul class="navilist">|</ul>
    4. 1 = TMENU
    5. 1 {
    6. NO = 1
    7. NO.stdWrap2.wrap = <li class="naviitem">|</li>
    8. CUR = 1
    9. CUR.stdWrap2.wrap = <li class="current1">&nbsp;&nbsp;|</li>
    10. ACT = 1
    11. ACT < .NO
    12.  
    13. SPC = 1
    14. SPC.stdWrap2.wrap = <li class="titel">|</li>
    15.  
    16. IFSUB = 1
    17. IFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    18. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    19. }

  • zeroalpha zeroalpha
    Jedi-Meister
    0 x
    276 Beiträge
    6 Hilfreiche Beiträge
    08. 10. 2013, 13:31

    Verwende doch dein IFSUB auch für den CUR -Zustand.
    Damit sollte es dann auch dort greifen.

    Und ist das Leben auch noch so schwer - schlimmer wär's wenn ich Programmierer wär!

  • OpenSoul OpenSoul
    Padawan
    0 x
    35 Beiträge
    0 Hilfreiche Beiträge
    08. 10. 2013, 15:59

    Dann hätte ich die ">>"-Zeichen aber auch bei Menüeinträgen, die keine Untermenüs haben, sobald auf den Eintrag geklickt wird. Bräuchte soetwas hier:

    if(Untermenü vorhanden)
    {
    CUR.stdWrap2.wrap = <li class="current1">&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    }
    else
    {
    CUR.stdWrap2.wrap = <li class="current1">&nbsp;&nbsp;|</li>
    }

  • Norman2k Norman2k
    Jedi-General
    0 x
    1657 Beiträge
    80 Hilfreiche Beiträge
    08. 10. 2013, 16:44

    Benötigst du überhaupt CUR? Reicht nicht ACT und ACTIFSUB?

  • OpenSoul OpenSoul
    Padawan
    0 x
    35 Beiträge
    0 Hilfreiche Beiträge
    08. 10. 2013, 18:31

    Wie ich eben feststellen musste, brauche ich CUR nicht... Danke! Nun läuft es so, wie ich mir das vorgestellt habe :)

    Hier der funktionsfähige Code für das Menü:

    1. nav = HMENU
    2. nav {
    3. wrap = <ul class="navilist">|</ul>
    4. 1 = TMENU
    5. 1 {
    6. NO = 1
    7. NO.stdWrap2.wrap = <li class="naviitem">|</li>
    8.  
    9. ACT = 1
    10. ACT.stdWrap2.wrap = <li class="naviitem">|</li>
    11.  
    12. SPC = 1
    13. SPC.stdWrap2.wrap = <li class="titel">|</li>
    14.  
    15. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    16.  
    17. IFSUB = 1
    18. IFSUB.stdWrap2.wrap = <li class="naviitem">| &nbsp;&nbsp;&gt;&gt; </li>
    19. }
    20.  
    21. 2 = TMENU
    22. 2 {
    23. NO = 1
    24. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;|</li>
    25.  
    26. ACT = 1
    27. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;|</li>
    28.  
    29. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    30.  
    31. IFSUB = 1
    32. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    33. }
    34.  
    35. 3 = TMENU
    36. 3 {
    37. NO = 1
    38. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    39.  
    40. ACT = 1
    41. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    42.  
    43. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    44.  
    45. IFSUB = 1
    46. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    47. }
    48. 4 = TMENU
    49. 4 {
    50. NO = 1
    51. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    52.  
    53. ACT = 1
    54. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    55.  
    56. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    57.  
    58. IFSUB = 1
    59. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    60. }
    61. 5 = TMENU
    62. 5 {
    63. NO = 1
    64. NO.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    65.  
    66. ACT = 1
    67. ACT.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;|</li>
    68.  
    69. ACTIFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    70.  
    71. IFSUB = 1
    72. IFSUB.stdWrap2.wrap = <li class="naviitem">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| &nbsp;&nbsp;&gt;&gt; </li>
    73. }
    74. }

  • Norman2k Norman2k
    Jedi-General
    0 x
    1657 Beiträge
    80 Hilfreiche Beiträge
    09. 10. 2013, 08:46

    Ein bisschen viel Leerzeichen in deinem Code oder? Ich kenne dein Menü nicht aber kannst du da nicht mit Margin/Padding arbeiten?

  • 1