[TYPO3-german] Re: Werte von Markern überschreiben

Christian Wolff chris at connye.com
Tue Dec 4 13:19:06 CET 2007


Am 04.12.2007, 12:37 Uhr, schrieb Raphael Weber  
<mailinglisten at screensolutions.de>:


[...]
> ich wollte aber doch gerne langsam mal kapieren, wie man diese Werte per  
> TS überschreiben kann. Fänd ich wesentlich komfortabler (gerade was die  
> Wartung angeht) und ist in manchen Fällen ja auch unumgänglich (z.B. bei  
> mehrsprachigen Sites).
> ich weiss nur nicht
> a) ob man das mit den Constants oder im Setup macht
> b) wie man -egal ob in EXT oder PAGE-Objekten- die Objekte richtig  
> referenziert und wie man die Objekt-Pfade am besten ableiten kann
[...]

Hallo Raphael,
Vieleicht kann ich dir Ja etwas beim verständnis vom
TS-Setup und Constanten helfen.

angenommen du hast folgendes in deinem Template Stehen:

Konstanten:
my_specialconstant = Hello World!


und folgendes im TS-Setup:

page.10 = TEXT
page.10.value =  {$my_specialconstant}
page.wrap = <h1>|</h1>
page.20 = TEXT
page.20.value =  {$my_specialconstant}
page.wrap = <p>|</p>
[GPVar = drittes = 1]
page.30 = TEXT
page.30.value =  {$my_specialconstant}
[gLobal]


beim "Rendern" Der seite Geht typo3 nun folgenden schirtte:

1. Konstanten einlesen und mit hilfe von Suchen und ersetzen ins TS-Setup  
eintragen.
dann sieht unser TS So aus:
page = Page
page.10 = TEXT
page.10.value =  Hello World!
page.wrap = <h1>|</h1>
page.20 = TEXT
page.20.value =  Hello World!
page.wrap = <p>|</p>
[GPVar = drittes = 1]
page.30 = TEXT
page.30.value =  Hello World!
[global]

2. Das TS-Setup Parsen. der Parser Läuft vom oben nach unten. durch das TS  
und Bastelt sich ein Conf
array.  und berücksichtigt dabei Eventuelle Conditions

das conf array für unser Beispiel sieht dann so aus (gehe davon aus das  
die Condition nicht erfüllt ist:

array(
	'page' => 'text';
	'page.' = array(
		'10' => 'TEXT'
		'10.' => array(
			'value' => 'Hello World!',
			'wrap' => '<h1>|</h1>'
		)
		'20' => 'TEXT'
		'20.' => array(
			'value' => 'Hello World!'
			'wrap' => '<p>|</p>'
		)
	)	
)

3. Typo3 Erzeugt ein/das PAGE Object.
und gibt diesem Object seine Configuration mit (das alles unter page. im  
array.
dieses page Object kümmert sich nun darum weitere Objecte zu initalisieren.
und gibt auch diesen Objecten wieder die Jeweilige Configuration mit.
das heist das erste TEXT Object würde folgende configuration bekommen:

array(
	'value' => 'Hello World!',
	'wrap' => '<h1>|</h1>'
)

das das text Object rendert nun den inhalt (unter zu hilfe nahme von  
stdWrap).
und gibt ihn an das page Object zurück. das gleiche würde auch für das  
TEXT Object Gelten.

typo3 Objecte werden in der Regel mit zwei Prametern aufgerufen und geben  
und geben einen Wert zurück

objectname($content,$conf){
	[...]
	return $content
}

Wobei $content der inhalt ist bei den meisten aufrufen ist der content  
leer da das object selbst ja
erst inhalt erzeugt und diesen dann zurück gibt. bei der function die  
stdWrap funktionen hingegen manipulieren
ja meistens inhalt. die sind natürlich auf $content angewiesen.


ich hoffe damit wird dir das zusammen spiel von Konstanten TS-Setup (und  
wie das ganze dann ausgegeben wird)
etwas klarer. und ich hoffe der letzte abschnitt mit den arrays ist nicht  
zu PHP nah für dich.

gruss chris

















-- 
Christian Wolff // Berlin
http://www.connye.com

Latest Projects:
http://www.flycall.de | http://www.atr24.de|  http://www.titanic.de


More information about the TYPO3-german mailing list