Seit dem lang ersehnten Release der TYPO3 Version 6.2 gibt es neben den ganzen vielen Features nun eine neue Art von Extension, die Distribution.
Wer schon mal eine 6.2 nackt installiert hat, hat bestimmt im letzten Schritt die Möglichkeit gesehen, eine Liste von Distributionen herunterzuladen.
Mit heutigem Stand gibt es zwei Distributionen, das „helloworld package“ und das altbekannte „Introduction Package“:
Solche Distributionen enthalten alles, um direkt nach Installation eine vorgefertigte Website erscheinen zu lassen.
In den Distributionen sind sowohl die abhängigen Extensions, das nötige TypoScript wie auch das Template in HTML und CSS enthalten.
Natürlich gibt es nun auch die Möglichkeit, Distributionen selber herzustellen.
Dies geht folgendermaßen:
- Reserviere einen Extension Key auf typo3.org (http://typo3.org/extensions/extension-keys/). In unserem Beispiel ist der Extension Key „yourext“
- Erstelle eine lokale Extension
- Setze die Abhängigkeiten in der ext_emconf.php (Beispiel unten)
- Die Dateien, die bei der Installation in das Verzeichnis „fileadmin/yourext“ kopiert werden sollen, müssen in der Extension in das Verzeichnis „Initialisation/Files/“
- Wenn etwas in die Datenbank geschrieben werden soll (wie z.B. TypoScript Templates), gehören drei Schritte dazu:
- Erstelle die Datensätze in einem bestehenden TYPO3 System
- Exportiere diese Datensätze mittels der Export-Funktion von TYPO3 in eine .t3d Datei
- Benenne die Datei in data.t3d um und kopiere sie ins Verzeichnis „Initialisation“
- Setze die Kategorie deiner Extension in der ext_emconf.php auf „distribution“
Wenn du die Distribution für alle verfügbar machen willst, kannst du sie natürlich ins TER hochladen.
Hier das Beispiel der ext_emconf.php:
$EM_CONF[$_EXTKEY] = array( 'title' => 'title', 'description' => 'description', 'category' => 'distribution', 'author' => 'your name', 'author_email' => 'yourmail@typo3.org', 'author_company' => '', 'shy' => '', 'priority' => '', 'module' => '', 'state' => 'beta', 'internal' => '', 'uploadfolder' => '0', 'createDirs' => '', 'modify_tables' => '', 'clearCacheOnLoad' => 0, 'lockType' => '', 'version' => '0.3', 'constraints' => array( 'depends' => array( 'extbase' => '6.2', 'fluid' => '6.2', 'typo3' => '6.2', 'news' => '2.2', ), 'conflicts' => array( ), 'suggests' => array( ), ), );
Hier ist diese Anleitung nochmal auf englisch: http://wiki.typo3.org/Distributions