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:
||
hat am Anfang und in der Mitte der erste Eintrag Vorrang, am Ende wird zuerst der letzte Eintrag verwendet.Wenn innerhalb des optionSplits das Pipe-Symbol als Wrap-Markierung weggelassen wird, fügt TYPO3 das optionSplit-Element hinten an den Wert an.
Über ein wrap
wird den Beispielwerten ein span
-Element mit Farbangabe sowie ein Komma zugewiesen:
wrap = <span style="color: XYZ">|,</span>
rot |*| orange |*| blau
<html>eins,zwei,drei,vier,fünf,sechs,sieben</html>
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 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>
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>
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>
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>
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>
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>