Split-Funktion in MENU anwenden

  • MorphexX MorphexX
    Padawan
    0 x
    46 Beiträge
    0 Hilfreiche Beiträge
    12. 07. 2011, 19:59

    Guten Abend zusammen,

    ist jemandem ein Problem bei der Verwendung der Split-Funktion innerhalb eines Menüs bekannt?
    Folgendes (auf das Wichtigste reduzierte) TypoScript ist bei mir in Verwendung:

    1. temp.quickAccess = HMENU
    2. temp.quickAccess {
    3.  
    4. special = directory
    5. special.value = {$nav.quickAccess}
    6.  
    7. 1 = TMENU
    8. 1 {
    9.  
    10. noBlur = 1
    11.  
    12. NO = 1
    13. NO {
    14.  
    15. before.cObject = COA
    16. before.cObject {
    17.  
    18. 10 = TEXT
    19. 10 {
    20. data = field:subtitle
    21. ifEmpty.data = field:title
    22. max = 2
    23. token.char = 124
    24. cObjNum = 1 |*| 2
    25. 1.current = 1
    26. 1.dataWrap = <h3>|</h3>
    27. 2.current = 1
    28. 2.dataWrap = <p>|</p>
    29. }
    30. }
    31.  
    32. }
    33.  
    34. }
    35.  
    36. }
    37.  
    38. }

    Auf Basis der in der Konstante nav.quickAccess definierten Seite, wird eine Unterseiten-Navigation erstellt. Von jeder Unterseite soll jeweils der Untertitel ausgelesen und bei einer Pipe gesplittet werden. Der Untertitel hat folgendes Format: Überschrift|Text.

    Der via nav.quickAccess definierten Seite, sind 5 Seiten untergeordnet.

    Das TypoScript [b]soll folgende Ausgabe erzeugen[/b]:

    1. <h3>Überschrift</h3>
    2. <p>Text</p>
    3.  
    4. <h3>Überschrift</h3>
    5. <p>Text</p>
    6.  
    7. <h3>Überschrift</h3>
    8. <p>Text</p>
    9.  
    10. <h3>Überschrift</h3>
    11. <p>Text</p>
    12.  
    13. <h3>Überschrift</h3>
    14. <p>Text</p>

    Das [b]tatsächliche Ergebnis[/b] ist allerdings das folgende:

    1. <h3>Überschrift</h3>
    2. <h3>Text</h3>
    3.  
    4. <p>Überschrift</p>
    5. <p>Text</p>
    6.  
    7. <p>Überschrift</p>
    8. <p>Text</p>
    9.  
    10. <p>Überschrift</p>
    11. <p>Text</p>
    12.  
    13. <p>Überschrift</p>
    14. <p>Text</p>

    Es macht den Anschein, als würde die Array-Referenz hinter cObjNum nicht mehr korrekt auf die Split-Elemente zeigen, sondern auf den aktuellen Menüpunkt. In dem TypoScript entdecke ich keinen Fehler; es ist in abgewandelter Form bereits seit einigen Projekten im Einsatz.

    Hat jemand eine Idee, wie ich zum Ziel komme, aber nicht auf den Split des Untertitels verzichten muss?

    Beste Grüße und vielen Dank im Voraus


  • 1
  • MorphexX MorphexX
    Padawan
    0 x
    46 Beiträge
    0 Hilfreiche Beiträge
    12. 07. 2011, 20:58

    Und die Lösung gibt es hier: http://old.nabble.com/Typoscript-split-and-TMENU-td30387217.html

  • holzem holzem
    T3PO
    0 x
    26 Beiträge
    2 Hilfreiche Beiträge
    07. 10. 2016, 11:22

    Hallo, ist zwar ein sehr alter Beitrag habe aber genau das selbe Problem.
    Die Zeiger (current) zeigen auf das Menu-Array nicht auf das split-Array.

    Der Link mit der Lösung geht nicht mehr.

  • holzem holzem
    T3PO
    0 x
    26 Beiträge
    2 Hilfreiche Beiträge
    17. 11. 2016, 08:57

    Kann hierzu jemand helfen?
    Ich habe innerhalb eines Menu ein Split durchführen möchte.
    Das Problem dabei ist, dass dann der OptionSplit (cObjNum) auf die Menu-Item zeigt nicht auf die Split-Item.

    Hier mal mein Code:

    1. lib.product.overview = HMENU
    2. lib.product.overview {
    3.  
    4. entryLevel = -1
    5.  
    6. 1 = TMENU
    7. 1 {
    8. expAll = 1
    9.  
    10. NO {
    11. doNotLinkIt = 0
    12. linkWrap = <div class="row">|</div>
    13. ATagBeforeWrap = 1
    14.  
    15.  
    16. ## GET CUSTOM FIELD (Values seperated by semikolon)
    17. 10 = COA
    18. 10 {
    19.  
    20. ## List
    21. 10 = TEXT
    22. 10 {
    23. data = field:tx_mycustomfield
    24. token = ;
    25. cObjNum = |*| 1 || 2 || 3 |*|
    26.  
    27. 1.current = 1
    28. 1.wrap = <div class="item1">|</div>
    29.  
    30. 2.current = 1
    31. 2.wrap = <div class="item2">|</div>
    32.  
    33. 3.current = 1
    34. 3.wrap = <div class="item 3">|</div>
    35. }
    36. }
    37. }
    38. }
    39. }
    40. }
    41. }

    Alle mit Split generierten DIV haben die Klasse "Item1"

  • BastianBalthasarBux BastianBa...
    Jedi-Ratsmitglied
    0 x
    758 Beiträge
    9 Hilfreiche Beiträge
    18. 11. 2016, 12:23

    ich denke |*| vorne (und eventuell hinten) musst du entfernen.
    theoretisch, wenn ich den code richtig verstehe, sollten mit diesem code die 'mittlersten drei' jeweils 1,2 und 3 haben.
    ich glaub aber, dass hier der optionSplit schlicht streikt.
    beim 3.wrap ist glaub ich ein leerzeichen in der klasse zuviel (was für das eigentliche problem nix zur sache tut). ;)

    To err is human; to really screw things up requires the root password.
    https://www.Riccabona.IT/
    https://T3BOARD.TYPO3.org/

  • 1