Typo3 - Extensions programmieren

Aus Wikizone
Wechseln zu: Navigation, Suche

Struktur einer Extension

ext_emconf.php

Informationen und Metadaten zur Extension. Etwa die Infos die im Kickstarter unter General Info stehen.

ext_localconf.php

Enthält Konfigurationsdaten ($TYPO3_CONF_VARS) für das Backend und Frontend. Hier kann über die Extension API auch TypoScript eingebunden werden.

ext_tables.php

Konfiguration von Datenbanktabellen. Plugins und Module üver die Extension API einbinden. (Alles über Kickstarter)

ext_tables.sql

SQL-Daten für die Tabellendefinition. Die Auswertung erfolgt über den Extension Manager und das Install-Tool.

ext_tables_static+adt.sql

SQL-Tabellendefinition inkl. Daten. Z.B. für statische Daten (Länderinfos etc.) Die Tabellen müssen zusätzlich in ext_tables.sql definiert sein.

ext_typoscript_*.txt

Globaler TypoScript-Code. Steht nicht üver Template-Datensätze zur Auswahl (siehe /static)

ext_conf_template.txt

Hier werden Optionen zur Konfiguration angelegt, die der Benutzer im Extensionmanager einstellen kann.

*icon*.gif

Symbol-Dateien für Extension,DB-Tabellen,Plugins, Module...

locallang*.php

Texte für die Lokalisierung in verschiedenen Sprachen

class*.php

PHP-Klassen z.B. für Plugins oder Submodule

class.ext_update.php

Funktionen für ein Update der Extension (Beispiel siehe newloginbox).

pi1/

Verzeichnis für Skripte und Daten des Plugin

cm1/ Verzeichnis für Dateien die das Kontext-Menü betreffen

mod1/ Verzeichnis für ein Modul.

conf.php

Konfigurationsdatei für ein Modul zum einbinden ins Backend.

index.php

Hauptscript eines Moduls.

modfunc1/

Skripte und Daten für Submodul-Funktionen

static/

TypoScript-Template-Dateien. Diese werden über die Extension-API eingebunden und stehen dann in Template-Datensätzen, ähnlich den Standard Templates zur Auswahl.

sv1/

Verzeichnis für Services

res/

Verzeichnis für beliebige 'recourcen'.

doc/

Verzeichnis der Dokumentation.

Wo werden Extensions installiert ?

typo3/sysext/ (System)

System Extensions wie cms und lang. Hier können keine Extensions mit dem Extension Manager installiert werden.

typo3/ext/ - globale Extensions (Global)

Z.B. diese die von Typo3 mitgeliefert werden. Mit der Option allowGlobalInstall kann man die Installation in dieses Verzeichnis erlauben. Das ist dann nicht sinnvoll wenn sich mehrere Typo3 WEbsites eine Installation teilen, weil es hier zu Versionskonflikten kommen kann.

typo3conf/ext - lokale Extensions (Local)

Hier werden normalerweise alle Extensions installiert. Die Lokale Installation hat immer Vorang vor einer globalen.