Inhaltsverzeichnis

optionSplit

Mit dem optionSplit lassen sich mehrere Werte unterschiedlich formatieren. Hauptsächlich wird dies bei Menüs verwendet, aber auch mit der Funktion split kann man darauf zurückgreifen.

|*|zerlegt die Werte in maximal drei Teile.
|| kann diese Teile in weitere Unterteile (Subparts) zerlegen.

Zur Reihenfolge der Verarbeitung:

Wenn innerhalb des optionSplits das Pipe-Symbol als Wrap-Markierung weggelassen wird, fügt TYPO3 das optionSplit-Element hinten an den Wert an.

Beispiele

Über ein wrap wird den Beispielwerten ein span-Element mit Farbangabe sowie ein Komma zugewiesen:

wrap = <span style="color: XYZ">|,</span>

Drei Teile: je einmal Anfang und Ende, der mittlere Teil wird wiederholt

rot |*| orange |*| blau

<html>eins,zwei,drei,vier,fünf,sechs,sieben</html>

Drei Teile, alle mit Untergruppen


rot||orange |*| blau||grün |*| purple||magenta

<html>eins</html>

<html>eins,zwei</html>

<html>eins,zwei,drei</html>

<html>eins,zwei,drei,vier,fünf,sechs,sieben</html>


Kein Mittelteil, nur Anfang und Ende

Kein Leerzeichen zwischen den Trennern. Der letzte Subpart des Anfangs wird wiederholt.

rot||orange |*||*| blau||grün

<html>eins,zwei,drei</html>

<html>eins,zwei,drei,vier,fünf,sechs,sieben</html>


Leerer Mittelteil

Bei leerem Hauptteil wird für die entsprechenden Werte kein wrap übergeben. Im Beispiel bleiben die mittleren Werte schwarz und das Komma fehlt.

rot||orange |*| |*| blau||grün

<html>eins,zwei,dreivierfünfsechs,sieben</html>


Nur ein Hauptteil mit Subparts

Hier ist es wichtig, dass zwischen |*||*| kein Leerzeichen steht – sonst gilt dieser Teil der Anweisung als gesetzt (aber leer) und die Farben werden nicht auf alle Werte angewendet (siehe „Leerer Mittelteil“).

rot||orange||blau |*||*|

<html>eins,zwei</html>

<html>eins,zwei,drei,vier,fünf</html>

|*| rot||orange||blau |*|

<html>eins,zwei</html>

<html>eins,zwei,drei,vier,fünf</html>

|*||*| rot||orange||blau

<html>eins</html>

<html>eins,zwei</html>

<html>eins,zwei,drei,vier,fünf</html>


Nur Subparts, keine Trenner für Hauptparts

Zuweisung von links nach rechts. Der letzte Part wird wiederholt.

rot||orange||blau

<html>eins,zwei</html>

<html>eins,zwei,drei,vier,fünf</html>


Nur zwei Hauptteile

Bei zwei Hauptteilen gilt der Endpart als fehlend. Der rechte Teil gilt als Mittelteil und wird wechselnd wiederholt.

rot||orange |*| blau||grün

<html>eins,zwei,drei,vier,fünf,sechs,sieben</html>


optionSplit mit stdWrap.split

Die von split ausgegebenen Werte werden mit cObjNum nummeriert und mit optionSplit unterteilt. Anschließend werden die gewünschten Zuweisungen aufgeführt. -> Näheres zu 'split'

page = PAGE
page {
  10 = TEXT
  10.value = eins,zwei,drei,vier,fünf
  10.split {
    token = ,
    cObjNum = 1 |*| 2 |*| 3
    1.current = 1
    1.wrap = <span style="color:red">|,</span>
    2.current = 1
    2.wrap = <span style="color:orange">|,</span>
    3.current = 1
    3.wrap = <span style="color:blue">|</span>
  } 
}

<html> Ergebnis: eins,zwei,drei,vier,fünf </html>