[TYPO3-german] TypoScript Einführung nötig?

Peter Linzenkirchner info at lisardo.de
Thu May 22 13:38:21 CEST 2008


Hallo Johannes,

>
> erkennen kannst. So kämpfe ich u.a. mit der Funktion stdWrap und ihrer
> vielfältigen Anwendung. Ich habe auch noch nirgends eine wirklich
> vernünftige Erklärung gefunden was stdWrap meint, ist und wann bzw.  
> wofür
> sie anzuwenden ist. Vielleicht bin aber eine Ausnahme und habe nur  
> noch
> nichts kapiert!?

Kann ich gut nachvollziehen, ging mir auch so. Nun, mittlerweile gibt  
es mind. 10 Bücher zu Typo3, die meisten enthalten auch eine  
Einführung in Typoscript. Nach wie vor ist der Klassiker zum Lernen  
von TypoScript "Praxiswissen" von Robert Meyer. Die Preise liegen  
zwischen 12 und 50 Euro, was ich angesichts der Zeitersparnis, die  
diese Bücher bedeuten, für eine geringe Investition halte.

Es gibt sogar ein ziemlich gutes Videotraining von Irene Höppner  
("TypoScript Videotraining"), das gerade stdWrap gut erklärt.

Weiter gibt es Quellen im Internet, allerdings meist englischsprachig:

<http://www.fi-ausbilden.de/blog/2007/07/08/typoscript-eine-einfuhrung/>
<http://typo3.org/documentation/document-library/core-documentation/doc_core_ts/4.1.0/view/toc/0/ 
 >
<http://typo3.org/documentation/document-library/core-documentation/doc_core_tsbyex/0.0.16/view/ 
 >

Noch eine kurze Anmerkung zu stdWrap:

Zu Verwirrung führte bei mir die Tatsache dass es so viele versch.  
wraps gibt: warp, innerwrap und so weiter. Das kam bei mir so an, dass  
stdWrap so etwas ähnliches wäre; dem ist aber nicht so.

wrap, outerwrap, innerwrap, wrap1, wrap2 etc. dienen alle dazu, einen  
gegebenen Inhalt zu wrappen, sprich, ihn mit etwas zu umgeben. Davor  
und danach, getrennt durch den senkrechten Strich.

stdWrap ist dagegen eine Sammlung von Funktionen, mit denen ein Wert  
manipuliert werden kann. Wenn ein Extension-Programmierer einen Wert  
nicht nur einfach ausgeben lässt (z. B. in den entsprechenden  
Platzhalter im Template), sondern ihn zuerst den stdWrap-Funktionen  
übergibt, dann kann der Anwender diesen Wert vor der Ausgabe mit Hilfe  
der stdWrap-Funktionen manipulieren. (Das ist immer der Fall, wenn in  
der Dokumentation einer Extension in der mittleren Spalte /stdWrap  
erwähnt wird.) Du kannst den Wert dann z. B. croppen, alle HTML-Tags  
daraus entfernen lassen, ihn in Großbuchstaben umwandeln und viele  
Dutzend Möglichkeiten mehr. Etwas verwirrend dabei ist, dass auch  
normale wraps und sogar einige der Funktionen in stdWrap selbst wieder  
stdWrap-Eigenschaft besitzen - das heisst, dass auch normale wraps mit  
den stdWrap-Funktionen manipuliert werden können und sogar, dass sich  
die stdWrap-Funktionen rekursiv selbst aufrufen können. Das macht  
stdWrap buchstäblich zum Alleskönner und gleichzeitig schwer zu  
verstehen.

Bekannt ist ja dieses Beispiel für tt_news:

plugin.tt_news.displayList.subheader_stdWrap {
   crop = 300 | ... | 1
   ifEmpty.field = bodytext
}


Das Plugin tt_news in der Listenausgabe (=displayList) gibt den  
Subheader ins Template aus. Dieser wird aber vorher den stdWrap- 
Funktionen übergeben: subheader_stdWrap hat die stdWrap-Eigenschaft.  
Daraus folgt, dass die Ausgabe des Subheaders buchstäblich allen  
stdWrap-funkionen unterworfen werden kann, _bevor_ die tatsächliche  
Ausgabe ins Template erfolgt:

crop: die Ausgabe wird gekürzt
ifEmpty: wenn das Feld leer ist, wird statt dessen bodytext genommen.

Und weitere Beispiele:
wrap: die Ausgabe kann zusätzlich gewrappt werden,
removeBadHTML: entfernt "böses" HTML
stripHTML: entfernt alles HTML

und so weiter. Natürlich machen viele stdWrap-funktionen in diesem  
Beispiel keinen Sinn, aber prinzipiell sind alle möglich.

Viele Grüße
Peter

-- 
-----------------------------------------------
Lisardo Multimedia GmbH
Herrenbachstraße 19, 86161 Augsburg
Tel. ++49-821-150565, Fax ++49-821-150595
http://www.lisardo.biz/
info at lisardo.de

Geschäftsführer: Peter Linzenkirchner
Amtsgericht Augsburg, HRB 14435
-----------------------------------------------





More information about the TYPO3-german mailing list