Sie sind hier
E-Book

TYPO 3 und TypoScript

AutorDaniel Koch
VerlagCarl Hanser Fachbuchverlag
Erscheinungsjahr2006
Seitenanzahl397 Seiten
ISBN9783446409491
FormatPDF
KopierschutzWasserzeichen/DRM
GerätePC/MAC/eReader/Tablet
Preis23,99 EUR
Längst hat sich TYPO3 als das meistverbreitete Open Source-CMS etabliert. Immer gefragter sind jetzt Spezial-Bücher zur Erweiterung und Anpassung von TYPO3 - genau wie dieses Buch von Daniel Koch.

Es zeigt, wie sich die Programmierung von Webseiten, die Erstellung von Templates und die Entwicklung von Extensions unter TYPO3 mit Hilfe von TypoScript optimieren läßt. Nach einer Einführung in Sprachsyntax und Funktionsweise folgen weiterführende Themen wie Grafikbearbeitung, Menüs, Frames und Formulare sowie TypoScript und SQL. Anhand zahlreicher Beispiele wird gezeigt, wie sich Probleme und Anforderungen lösen lassen. Den Abschluss bildet eine Kurzreferenz, die die wichtigsten Befehle in ihrem Kontext aufführt.

Die Neuauflage berücksichtigt die neueste TYPO3-Version 4.0 und behandelt nun auch Themen wie z.B. barrierefreie Websites. 

Kaufen Sie hier:

Horizontale Tabs

Leseprobe

4 Designvorlagen (S. 82)

Mit Designvorlagen wird normalerweise das Grundlayout für die Website festgelegt. Wie bei anderen CM-Systemen kommen auch in TYPO3 Platzhalter zum Einsatz. Sie lassen sich in Form von Markern oder Subparts in die Designvorlage einfügen, um später automatisch durch die entsprechenden Inhalte ersetzt zu werden.

4.1 Designvorlagen vs. Templates

Immer wieder gibt es Unklarheiten mit den beiden Begriffen Templates und Designvorlagen: Entweder kommt der Begriff Designvorlagen überhaupt nicht vor oder er wird mit Templates gleichgesetzt. Wie auch immer – beides ist falsch. Bei einer Designvorlage handelt es sich eigentlich um eine normale HTML-Datei. Ihre einzige Besonderheit sind Platzhalter nach dem Schema ###INHALT### bzw. ###INHALT### Das ist der Inhalt ###INHALT###. Wie die HTML-Seite letztendlich gestaltet ist, spielt keine Rolle – hier dürfen Sie auf Tabellen-Layouts ebenso wie auf modernes CSS-Design setzen. Ganz anders verhält es sich bei Templates, denn bei ihnen handelt es sich um dynamische Seitendefinitionen. Mehr zum Thema Templates erfahren Sie im nächsten Kapitel. Um mit Templates zu arbeiten, müssen zumindest Grundkenntnisse in TypoScript vorhanden sein. Zunächst soll aber das Prinzip der Designvorlagen vorgestellt werden.

4.2 Das Prinzip von Designvorlagen

Grundsätzlich wird bei Websites, die auf TYPO3 –basieren, zwischen statischen und dynamischen Elementen unterschieden.

Typische statische Elemente sind:

Tabellenstruktur für die Definition des Grundlayouts (sollte allerdings durch CSS ersetzt werden)

Grafiken, die an vielen Stellen zum Einsatz kommen (können ebenso statisch definiert sein, was sich beispielsweise bei Logos empfiehlt).

Zu den dynamischen Elementen zählen:

Textlink zur Druckversion
Textmenü Newsbereich

Was haben statische und dynamische Elemente mit der Designvorlage zu tun? Sämtliche statischen Elemente werden fest in die HTML-Datei kodiert. Alles was dynamisch sein soll, wird hingegen mit Platzhaltern gekennzeichnet. Diese Platzhalter lassen sich später ganz einfach durch den dynamischen Inhalt ersetzen.

Es gibt zwei unterschiedliche Arten von Platzhaltern: Marker und Subparts. Das Prinzip mit Platzhaltern zu arbeiten, ist übrigens keine TYPO3-Entwicklung, sondern wird auch in anderen CM-Systemen so gehandhabt. Dort existieren meistens viele Arten von Platzhaltern, so dass man schnell den Überblick verliert. TYPO3 gibt sich hier zum Glück mit bescheidenen zwei Platzhaltertypen zufrieden (die aber trotzdem allen Anforderungen gerecht werden).

Obwohl beide Platzhalterarten eine ähnliche Syntax verwenden, sind sie doch verschieden und für unterschiedliche Einsatzzwecke konzipiert. Trotzdem bestehen einige Gemeinsamkeiten, die vor allem den Bezeichner betreffen. Es ist es in TYPO3 Sitte, dass Bezeichner ausschließlich in Großbuchstaben geschrieben werden. Das macht insofern Sinn, als die Platzhalter im Quelltext schneller auffindbar sind. Außerdem wird dadurch verhindert, dass TYPO3 die Platzhalter nicht richtig zuordnen kann. Da bei Platzhaltern zwischen Groß- und Kleinschreibung unterschieden wird, ist wenigstens eine Fehlerquelle ausgemerzt, wenn man nur Großbuchstaben verwendet. Weiterhin sollten Sie sowohl bei Markern als auch bei Subparts auf Sonderzeichen und Umlaute verzichten.

Inhaltsverzeichnis
Inhalt7
Vorwort14
Einführung in TypoScript16
1 Einführung in TypoScript17
1.1 Grundlegende Vorarbeiten zum Buch17
1.1.1 Deutsche Benutzeroberfläche einrichten17
1.1.2 Dummy-Paket19
1.1.3 Für manche Fälle: Eine Seitenstruktur erstellen19
1.2 Deklarative Programmierung oder was ist TypoScript?21
1.2.1 So leistungsfähig ist TypoScript22
1.2.2 Das ist TypoScript wirklich23
1.2.3 TypoScript für die Backend-Gestaltung24
1.2.4 TypoScript und PHP25
1.3 TypoScript-Templates27
1.4 TypoScript-Funktionen29
TypoScript kennen lernen30
2 TypoScript kennen lernen31
2.1 Hallo, Welt!31
2.2 Syntax33
2.2.1 Objekte und Objekteigenschaften34
2.2.2 Die Einteilung der Objektgruppen41
2.2.3 Konstanten41
2.2.4 Operatoren42
2.2.5 Datentypen45
2.2.6 Das Wrap-Prinzip47
2.2.7 Kommentare48
2.2.8 Bedingungen49
2.2.9 Funktionen51
Tools und Editoren56
3 Tools und Editoren57
3.1 Der Editor Ihrer Wahl57
3.1.1 Syntaxhighlighting im UltraEdit58
3.2 Info/Modify58
3.2.1 Elemente59
3.3 TypoScript Object Browser61
3.4 Template Analyzer63
3.5 Die TypoScript Eigenschaften- Anzeige64
3.6 Admin-Panel65
3.6.1 Kategorien66
3.7 Constant Editor69
3.7.1 Konstanten bereitstellen69
3.7.2 Der Praxisbeweis – Überschriftenfarben über Konstanten definieren70
3.7.3 Kategorien72
3.7.4 Feldtypen74
3.7.5 Kategorien beschreiben75
3.8 Ein Java-Editor für TypoScript77
3.9 TypoScript in HomeSite78
3.10 HTMLArea RTE79
3.11 Den Rich-Text-Editor (RTE) anpassen86
3.11.1 Die Buttonleiste anpassen87
3.11.2 Eigene Klassen definieren89
3.11.3 Absatzformate89
3.11.4 Farben definieren91
3.11.5 Benutzerdefinierte Menüs91
3.11.6 Hintergrundfarbe anpassen92
3.11.7 Die Ausgabe gezielt steuern93
Designvorlagen96
4 Designvorlagen97
4.1 Designvorlagen vs. Templates97
4.2 Das Prinzip von Designvorlagen97
4.2.1 Marker98
4.2.2 Subparts98
4.3 Der doppelte Head-Bereich100
Templates104
5 Templates105
5.1 Das Konzept von Templates105
5.1.1 Hallo, Welt!105
5.1.2 Hallo, Welt! Zum Zweiten105
5.1.3 Templates vererben107
5.2 Template-Bestandteile107
5.3 Objekte und Eigenschaften von Websites111
5.3.1 Seiteneigenschaften mit TypoScript definieren111
5.4 Designvorlagen einbinden112
5.4.1 Die Designvorlage ansprechen112
5.4.2 Platzhalter ansprechen114
5.5 Das Template Auto-Parser116
5.5.1 Den Parser installieren117
5.6 Standard-Templates121
5.7 Reine TypoScript-Templates125
5.8 TemplaVoila126
5.8.1 Systemvoraussetzungen127
5.8.2 TemplaVoila vorbereiten127
5.8.3 Die Datenstruktur anlegen129
5.8.4 Inhalte eingeben135
5.8.5 Fazit137
5.8.6 Flexforms137
Grafikbearbeitung138
6 Grafikbearbeitung139
6.1 Vorarbeiten für dieses Kapitel139
6.2 Grafiken einbinden141
6.3 Grafiken anpassen141
6.3.1 Die Grafikgröße ändern142
6.4 Dynamisch Grafiken erzeugen – der GIFBUILDER142
6.4.1 GIFBUILDER143
6.4.2 Ebenen145
6.4.3 Ebenen positionieren148
6.4.4 Boxen zeichnen148
6.4.5 Grafischer Text149
6.4.6 Anti- Aliasing mit -niceText152
6.5 Weiterführende Möglichkeiten153
6.5.1 Schatten153
6.5.2 Relief154
6.5.3 Den Seitentitel als Grafik ausgeben155
6.5.4 Grafiken aus der Datenbank auslesen156
6.6 Caching157
6.6.1 Was gecacht wird157
6.6.2 Den Cache leeren158
Menüs160
7 Menüs161
7.1 Diese Menüarten gibt es161
7.2 Hallo, Menüs!162
7.3 Eigenschaften von Menüs festlegen163
7.3.1 Zustände bestimmen164
7.3.2 Den Startpunkt des Menüs festlegen164
7.3.3 Menüarten bestimmen165
7.3.4 Das Einstiegslevel bestimmen167
7.3.5 Den ersten Menüeintrag festlegen167
7.3.6 Anzahl von Menüeinträgen bestimmen167
7.3.7 Menüpunkte ausschließen168
7.4 Textmenüs168
7.4.1 Eigenschaften von Textmenüs168
7.4.2 Untermenüs festlegen169
7.4.3 Stylesheets verwenden170
7.4.4 Abstände zwischen den Menüpunkten171
7.4.5 optionSplit – Senkrechte Striche einfügen171
7.4.6 Menüs und Tabellen173
7.4.7 Textmenüs und JavaScript174
7.5 JavaScript-Menüs174
7.5.1 Seiten aus dem Menü aufrufen175
7.6 Grafische Menüs176
7.6.1 Menüpunkte erzeugen176
7.6.2 Untermenüpunkte integrieren178
7.6.3 Linien erzeugen178
7.6.4 Die Menübreite automatisch anpassen180
7.6.5 Hintergrundgrafiken einfügen181
7.6.6 Eine Alternative zum GMENU182
7.7 GMENU_FOLDOUT183
7.8 Layer-Menüs185
7.8.1 Das Menü formatieren189
7.8.2 Textmenüs in Layer-Form191
7.9 ImageMaps192
7.10 Spezielle Menüs193
7.10.1 Zur nächsten Seite (browse)193
7.10.2 Sie befinden sich hier (rootline)194
7.10.3 Schlüsselwörter (keywords)195
7.10.4 Aktualisierte Seiten (updated)195
7.10.5 Directory198
7.10.6 List198
Frames200
8 Frames201
8.1 Hallo, Frames!201
8.2 Vor- und Nachteile von Frames202
8.3 Frames erzeugen204
8.3.1 Reihen205
8.3.2 Spalten205
8.3.3 Frames verschachteln206
8.3.4 Eigenschaften von Frames definieren210
8.4 Iframes213
8.4.1 Die Extension installieren213
8.4.2 Eigenschaften von Iframes festlegen214
Formulare216
9 Formulare217
9.1 Formulare anlegen218
9.1.1 Pflichtfelder219
9.1.2 Der Formularassistent220
9.2 Felder gestalten221
9.2.1 Ein vollständiges Formular221
9.2.2 Formularelemente in Spalten anzeigen222
9.3 Einen passwortgeschützten Bereich anlegen224
9.4 MailformPlus230
9.5 Die Standard-Suche233
9.5.1 Die Suche anpassen233
9.5.2 Die Ausgabe formatieren237
9.6 Die Erweiterte Suche integrieren238
9.7 Dateien hochladen247
TypoScript und SQL250
10 TypoScript und SQL251
10.1 Die Datenbankstruktur251
10.2 Datenbankinhalte dynamisch auslesen253
10.2.1 Überprüfen, ob ein Feld leer ist254
10.3 Die SQL- Anweisung manipulieren254
10.3.1 Inhalte sortieren255
10.3.2 Spalten gezielt auswählen256
10.4 SQL- Abfragen bei der Extension-Entwicklung258
10.4.1 Die Extension im Kickstarter anlegen258
10.4.2 Plugin-Vorschau260
10.4.3 Einen neuen Datensatz anlegen261
10.4.4 SQL-Abfragen einfügen261
Extensions264
11 Extensions265
11.1 Grundlagen265
11.1.1 Extension-Kategorien266
11.2 Der Extension Manager266
11.2.1 Extensions installieren269
11.3 Extensions im Einsatz270
11.3.1 News270
11.3.2 Kalender274
11.3.3 Newsletter276
11.4 Einen Chat integrieren280
11.5 Eigene Erweiterungen entwickeln282
11.6 Der Extension Kickstarter282
11.6.1 Einen Extension Key anlegen283
11.6.2 Die Kickstarter-Komponenten284
11.6.3 Das Frontend-Plugin integrieren286
11.6.4 Die Extension-Struktur288
11.6.5 Funktionen des Extension Managers289
11.6.6 TER-Account291
11.6.7 Eine eigene Extension entwerfen292
11.7 Praxiswissen für die Extension-Entwicklung296
11.7.1 Programmierrichtlinien296
11.7.2 Datenbankabstraktion300
11.7.3 Datenbankabstraktion in der Praxis302
11.7.4 Sicherheit303
11.7.5 Subparts ansprechen308
11.7.6 Marker ersetzen308
Barrierefreiheit312
12 Barrierefreiheit313
12.1 Hilfsmittel in TYPO3314
12.1.2 Accesskeys definieren316
12.2 TYPO3-Inhaltselemente barrierefrei gestalten318
12.2.1 Tabellen319
12.2.2 Formulare322
12.3 Menüs und Barrierefreiheit323
12.3.1 Textmenüs323
12.3.2 Grafikmenüs324
12.4 Weitere Maßnahmen325
Feinabstimmung327
13 Feinabstimmung328
13.1 TypoScript und Mehrsprachigkeit328
13.1.1 Automatische Sprachauswahl332
13.1.2 Menü und Mehrsprachigkeit333
13.2 Die Website in mehreren Versionen ausgeben334
13.2.1 PDF334
13.2.2 Eine Druckversion anbieten336
13.3 „Being generated“ deaktivieren337
13.4 TYPO und Suchmaschinen338
13.4.1 Meta-Tags einfügen338
13.4.2 Statische Dokumente simulieren340
13.4.3 Schutz vor E-Mail-Spam342
13.4.4 Den Seitenheader anpassen343
Backend-Anpassung345
14 Backend- Anpassung346
14.1 Page TSConfig346
14.1.1 Backend-Module konfigurieren346
14.1.2 Bearbeitungsformulare anpassen – TCEFORM348
14.1.3 Systemtabellen konfigurieren – TCEMAIN349
14.2 User TSConfig350
14.2.1 Setup351
14.2.2 admPanel351
14.2.3 options352
14.3 Praxislösungen für die Backend- Anpassung352
14.3.1 Überschriften-Typen im Bereich Überschrift anpassen352
14.3.2 Entfernen nicht mehr benötigter Seitentypen353
14.3.3 Einen neuen Menüeintrag in das Backend einfügen354
Referenz355
15 Referenz356
15.1 Funktionen356
15.1.1 Datums- und Zeitfunktionen356
15.1.2 if356
15.1.3 imageLinkWrap358
15.1.4 parseFunc361
15.1.5 select362
15.1.6 tableStyle364
15.2 Conditions (Bedingungen)365
15.2.1 Browser365
15.2.2 Browser-Version366
15.2.3 Betriebssystem366
15.2.4 Device367
15.2.5 Sprache367
15.2.6 Weitere Möglichkeiten367
15.3 Formulare368
15.3.1 Formularfelder368
15.4 Frames369
15.4.1 Frame369
15.4.2 Frameset370
15.5 GIFBUILDER371
15.6 Menüs373
15.7 Objekt-Referenz375
15.7.1 CONTENT375
15.7.2 EDITPANEL375
15.7.3 FILE377
15.7.4 HRULER377
15.7.5 IMAGE378
15.7.6 CLEARGIF379
15.7.7 IMAGE_RESOURCE379
15.7.8 PAGE379
15.7.9 PAGE und Stylesheet-Angaben382
15.7.10 TEMPLATE383
15.8 CONFIG384
Index390
Mehr eBooks bei www.ciando.com0

Weitere E-Books zum Thema: Software - Betriebssysteme - Anwenderprogramme

CAD für Maker

E-Book CAD für Maker

CAD für Maker - designe deine DIY-Objekte für 3D-Druck, Lasercutting & Co.Du liebst es, deine eigenen Ideen in die Tat umzusetzen? Du fertigst gerne Gegenstände aus Holz, Kunststoff oder Metall? ...

AutoCAD 2014

E-Book AutoCAD 2014

Grundlagen* Benutzeroberfläche* Eingabemöglichkeiten* Dateiformate* Neues in AutoCAD 2014 Zeichenbefehle* Dynamische Eingabe* Absolut-, Relativ- und Polarkoordinaten* Prüfen Zeichenhilfen* ...

Weitere Zeitschriften

Archiv und Wirtschaft

Archiv und Wirtschaft

Fachbeiträge zum Archivwesen der Wirtschaft; Rezensionen Die seit 1967 vierteljährlich erscheinende Zeitschrift für das Archivwesen der Wirtschaft "Archiv und Wirtschaft" bietet Raum für ...

Computerwoche

Computerwoche

Die COMPUTERWOCHE berichtet schnell und detailliert über alle Belange der Informations- und Kommunikationstechnik in Unternehmen – über Trends, neue Technologien, Produkte und Märkte. IT-Manager ...

crescendo

crescendo

Die Zeitschrift für Blas- und Spielleutemusik in NRW- Informationen aus dem Volksmusikerbund NRW - Berichte aus 23 Kreisverbänden mit über 1000 Blasorchestern, Spielmanns- und Fanfarenzügen - ...

Die Versicherungspraxis

Die Versicherungspraxis

Behandlung versicherungsrelevanter Themen. Erfahren Sie mehr über den DVS. Der DVS Deutscher Versicherungs-Schutzverband e.V, Bonn, ist der Interessenvertreter der versicherungsnehmenden Wirtschaft. ...

Eishockey NEWS

Eishockey NEWS

Eishockey NEWS bringt alles über die DEL, die DEL2, die Oberliga sowie die Regionalligen und Informationen über die NHL. Dazu ausführliche Statistiken, Hintergrundberichte, Personalities ...

VideoMarkt

VideoMarkt

VideoMarkt – besser unterhalten. VideoMarkt deckt die gesamte Videobranche ab: Videoverkauf, Videoverleih und digitale Distribution. Das komplette Serviceangebot von VideoMarkt unterstützt die ...