170 likes | 304 Views
TypoScript. TypoScript – Was ist das?. textbasierte Sprache zur hierarchischen Anordnung von Informationen soll komfortablen Umgang mit diesen bieten keine klassische Skriptsprache, eher Konfigurations- oder Deklarationssprache für Typo3-Anwendungen
E N D
TypoScript – Was ist das? • textbasierte Sprache zur hierarchischen Anordnung von Informationen • soll komfortablen Umgang mit diesen bieten • keine klassische Skriptsprache, eher Konfigurations- oder Deklarationssprache für Typo3-Anwendungen • Funktion entsteht erst durch Verwendung in bestimmten Kontexten IT-Zertifikat - Dedizierte Systeme: TypoScript
Anwendungsbeispiele • allgemeine Typo3-Konfigurationen (z.B. Cache löschen) • Templates erstellen und bearbeiten • Standardkonfigurationen von Plugins bearbeiten • Content dynamisch für verschiedene Ausgabemedien formatieren (Druck, PDA, usw.) • … IT-Zertifikat - Dedizierte Systeme: TypoScript
Aufbau • Objektpfade: Objekte und Eigenschaften • und deren Werte • praktisch Variablen mit Werten • werden beim Parsen in (multidimensionale) PHP-Arrays gewandelt, die von anderen Programmteilen (Typo3-Kern, Typo3-Plugins, usw.) verwendet werden können IT-Zertifikat - Dedizierte Systeme: TypoScript
Operatoren • Operator '=': Zuweisung;über mehrere Zeilen mit (…) • Operator '<': Kopiere Inhalt von b nach a (a<b) • Operator '>': Lösche Objektpfad und Inhalt (a>) • Gliederung mit {…} • Kommentare mit /, //, #, /* … */ IT-Zertifikat - Dedizierte Systeme: TypoScript
Objektpfade: Beispiel myObject= [value1] myObject.myProperty= [value2] myObject.myProperty.firstProperty= [value 3] myObject.myProperty.secondProperty= [value 4] IT-Zertifikat - Dedizierte Systeme: TypoScript
Objektpfade: Gliederung page.10{ bla=abc bla1= abc1 bla2= abc2 } anstatt: page.10.bla=abc page.10.bla1= abc1 page.10.bla2= abc2 IT-Zertifikat - Dedizierte Systeme: TypoScript
Wertzuweisung über mehrere Zeilen myObject = HTML myObject.value ( <BLINK> HTML - code </BLINK> ) IT-Zertifikat - Dedizierte Systeme: TypoScript
Funktionen sowohl per • Objekttypen: vorkonfigurierte Typen mit bestimmten Eigenschaften (z.B. PAGE, TEXT, FILE, IMAGE, CONTENT, CASE, TEMPLATE) als auch über • Eigenschaften: z.B. wrap, data, field IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Textobjekt seite = PAGE seite.typeNum = 0 seite.10 = TEXT seite.10.value = <font size=“2“>Hallo Welt</font><br> IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Inhalt in HTML einfügen seite = PAGE seite.typeNum = 0 seite.wrap ( <table> <tr> <td> | </td> <tr> </table> ) IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Feld aus Datenbank auslesen seite = PAGE seite.typeNum = 0 seite.10 = TEXT seite.10.field = title • einfache mySQL-Abfrage, in etwa wie: SELECT title FROM pages WHERE uid = [aktuelleSeite] IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiele: bestimmte Daten aus Datenbank auslesen seite = PAGE seite.typeNum = 0 seite.10 = TEXT seite.10.data = DB:pages:1:title oder seite.10.data = date:d.m.Y IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Content Object Array seite = PAGE seite.typeNum = 0 seite.10 = COA seite.10.10 = TEXT seite.10.10.value = Hallo seite.10.20 = TEXT seite.10.20.value = Welt IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Bedingung mit CASE seite = PAGE seite.typeNum = 0 seite.10 = CASE seite.10.key.field = title seite.10.test = TEXT seite.10.test.value = Im Title steht TEST seite.10.default = TEXT seite.10.default.field = title IT-Zertifikat - Dedizierte Systeme: TypoScript
Beispiel: Leseschleife mit CONTENT seite = PAGE seite.typeNum = 0 seite.10 = CONTENT seite.10.table = tt_content tt_content = TEXT tt_content.field = header • liest gesamten Inhalt des Feldes header der Tabelle tt_content aus IT-Zertifikat - Dedizierte Systeme: TypoScript
Links • deutsche Typo3-Dokumentation • deutsche TypoScript-Referenz • engl. TypoScript-Referenz (TSRef) • engl. TypoScript-Dokumentation • engl. TypoScript-Beispiele • deutscher Typo3-Workshop mit TS-Beispielen IT-Zertifikat - Dedizierte Systeme: TypoScript