Ordner und Dateien in Contao 4
Aus Contao Community Documentation
betrifft | |
---|---|
Contao Version | Contao 4 latest managed edition |
Unvollständiger Artikel: dieser Artikel ist noch nicht sauber bearbeitet.
Bitte erweitere ihn und entferne erst anschliessend diesen Hinweis. |
Hier sollen die Ordner und Dateien von Contao 4 dokumentiert werden, welche zum Verständnis und zur Anpassung des Systems relevant sind.
In Contao 3 waren dies:
.htaccess files/ system/ config/ dcaconfig.php initconfig.php langconfig.php localconfig.php modules/ templates/
Legende:
Anwendung: Contao (Contao ist eine Symfony Anwendung). Hiermit ist die komplette Installation gemeint. BE: Backend FE: Frontend
Inhaltsverzeichnis
.htaccess
Die Datei ist leer. Hier kann ein Passwortschutz aufgesetzt werden.
composer.json
composer.lock
app/
app/config/
app/config/parameters.yml
Konfigurationsparameter der Anwendung, dies sind u.a. Datenbank-Zugangsdaten usw.
app/config/config.yml
Gemeinsame Konfigurationsdatei der Website, hier werden alle "services" konfiguriert.
Die Parameter aus "parameters.yml" werden hier oftmals verwendet (z.B. in `secret: "%secret%"`, welches den Parameter "secret" aus "parameters.yml" hier einträgt).
app/config/config_dev.yml
Konfigurationsdatei für das Entwicklungs-Environment (siehe auch web/app_dev.php)
app/config/config_prod.yml
Konfigurationsdatei für das Produktiv-Environment (siehe auch web/app.php)
app/Resources/
Alle Anwendungsressourcen werden hier abgelegt, dies sind u.a. twig Templates.
app/Resources/contao/
app/Resources/contao/config/
Alle Contao relevanten Konfigurationen landen hier, dies sind lokale Anpassungen.
app/Resources/contao/dca/
Hier abgelegte Dinge ersetzen die aus Contao 3.5 bekannten dca-Dateien einer "z_custom" extension und system/config/dcaconfig.php
Beispiel:
Für ein neues Feld in den Seiteneinstellungen, hier eine Datei tl_page.php erstellen und die Feldkonfiguration eintragen.
app/Resources/contao/languages/
Hier abgelegte Dinge ersetzen die aus Contao 3.5 bekannten languages einer "z_custom" extension und system/config/langconfig.php
Beispiel:
Für die Beschriftung eines neuen Feldes in den Seiteneinstellungen, hier eine Datei en/tl_page.php erstellen und die Sprachvariablen eintragen.
contao-manager/
Konfigurations-Verzeichnis des Contao Managers.
contao-manager/cache/
Cache-Verzeichnis des Contao Managers.
contao-manager/logs/
Log-Verzeichnis des Contao Managers.
system/
DEPRECATED - hier sollte man nichts rein tun.
Der Contao-Manager legt hier Legacy-Erweiterungen ab, damit diese im Contao 3.5 Modus in Contao 4 lauffähig gemacht werden. Diese Verzeichnisse werden außerdem nach web/system symlinked, damit die assets derselbigen Module lauffähig sind.
system/config/
system/config/initconfig.php
DEPRECATED - wie in Contao 3.5 kommt hier Initialisierungscode rein, welchen Contao beim "Start" ausführen soll.
Sollte man nicht mehr verwenden, lieber ein app-bundle bauen und saubere services.
system/config/localconfig.php
Konfigurationsdatei für Einstellungen, welche noch nicht im Manager bzw. parameters.yml sind.
Entspricht der Konfigurationsmaske im Backend (System/Einstellungen).
AN ENTWICKLER: Bitte nichts mehr in dca/tl_settings.php und localconfig.php hinzufügen. Eigene Dinge mittelfristig hieraus auch wieder entfernen. Verwendet stattdessen bundle-Konfigurationsparameter.
files/
Dateien, welche auf der Website veröffentlicht werden. jpg, png, pdf, mp3, mp4, css, js usw.
Unterordner müssen über die Dateiverwaltung explizit freigegeben werden.
templates/
Eigene Templates für die FE-Ausgabe.
var/
Ablageverzeichnis der Anwendung für u.a. cache, logs etc.
var/cache/
var/cache/prod/
Dies ist der Ordner, den man löschen soll, wenn man aufgefordert wird, manuell den Cache zu löschen. Anschließend soll man das Installtool aufrufen.
vendor/
Composer Bibliotheksverzeichnis - hier wird der Code von Erweiterungen und Bundles abgelegt.
vendor/bin/
vendor/bin/contao-console
Diese Datei kann auf der Kommandozeile aufgerufen werden.
Beispiel:
php vendor/bin/contao-console cache:clear
web/
Auf diesen Ordner muss die Domain geroutet werden.
web/.htaccess
Apache Konfiguration um u.a. auf app.php zu redirecten.
web/app.php
Produktiver entrypoint der Anwendung aus dem Web. Entspricht in etwa "index.php" in Contao 3.5.
web/app_dev.php
Entwicklungs entrypoint der Anwendung aus dem Web. Entspricht in etwa "index.php" mit aktiviertem Debug Modus in Contao 3.5.
Um über app_dev aufrufen zu können muss die Zugangskontrolle eingerichtet werden (nicht bei localhost):
siehe https://contao.ninja/contao-4-login-fuer-app_dev-php-setzen.html
Ist über die .htaccess im Installationsverzeichnis ein Passwortschutz aufgesetzt, dann muss die User/Password-Kombination dort auch freigegeben werden.
BE-Zugang: example.org/app_dev.php/contao FE-Zugang: example.org/app_dev.php
web/bundles/
Hier werden alle assets von Bundles hineingelinkt um diese via web erreichbar zu machen.
web/system/
Siehe "system", hier werden assets von legacy Erweiterungen hin-gelinkt.
Wo findet man die DCA settings der Core Module?
Beispiel:
Für tl_news wäre dies hier:
vendor/contao/news-bundle/src/Resources/contao/dca/
--Andreas Burg (Diskussion) 18:19, 18. Okt. 2017 (CEST)
--Xtra (Diskussion) 20:08, 18. Okt. 2017 (CEST)