Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Entwicklungsumgebung

Für CMS-Entwickler eine funktionierende Entwicklungsumgebung mit wenigen Befehlen. Die Seite behandelt den Code als Git-Klone, eine Installation mit einem Befehl auf SQLite, Velocity mit der Engine des eingebauten…

Download as PDF

Address: https://doc.exponential.earth/learninminutes/exphelp/viewer/help/cms-developers/development-environment.md

On this page

This page is a translation. Read the English original

Entwicklungsumgebung

Diese Seite richtet sich an Entwickler, die den Rechner einrichten, auf dem sie Websites bauen. Eine Entwicklungsinstallation braucht wenige Befehle: Kernel und Erweiterungen als Git-Klone, eine Datenbank in einer SQLite-Datei und einen Webserver, der mit einem Befehl startet. Das Kapitel Eine Entwicklungsinstallation einrichten des Buchs enthält jedes Detail; diese Seite ist die Zusammenfassung für CMS-Entwickler mit dem Projekt drumherum.

Inhalt

  1. Was Sie brauchen
  2. Schritt 1: der Code als Git-Klone
  3. Schritt 2: mit einem Befehl installieren
  4. Schritt 3: ausliefern
  5. Schritt 4: Fehler sichtbar machen
  6. Schritt 5: die Erweiterungen Ihres Projekts
  7. Arbeit im Team
  8. Regeln, die Entwicklung und Live-Betrieb trennen
  9. Wenn etwas schiefgeht

Was Sie brauchen

PHP 8.0 oder später (PHP 7.4 ohne Support nutzbar) mit den Erweiterungen, die die composer.json im Hauptverzeichnis verlangt (dom, mbstring, json, iconv, simplexml und weitere; SQLite 3 für die Standarddatenbank, GD oder ImageMagick für Bilder), Composer und Git (Werkzeuge, die Sie brauchen, Anforderungen).

Schritt 1: der Code als Git-Klone

composer config --global 'preferred-install.se7enxweb/*' source
git clone https://github.com/se7enxweb/exponential.git mysite
cd mysite
git switch -c my-dev
composer install

Ist preferred-install auf source gesetzt, ist jede se7enxweb/*-Erweiterung ein Git-Klon unter extension/<name> mit ihrer Geschichte; Sie können also nachlesen, warum Code so ist, wie er ist, und Korrekturen zurückschicken (Mit Git entwickeln, Den Code holen).

Schritt 2: mit einem Befehl installieren

php bin/php/console exp:install --apply

Ohne Optionen installiert das das Seitenpaket sevenx_multisite auf SQLite in eng-US und gibt die Adresse der Website, die Anmeldung der Administration und ein erzeugtes Administratorpasswort aus (auch in var/log/initial-admin-password, nur für seinen Eigentümer lesbar). Andere Datenbanken und Pakete: Die Installation über die Konsole. Es weigert sich, über eine vorhandene Installation zu laufen, sofern nicht --force angegeben ist; richten Sie es nie auf eine Datenbank, die wichtig ist.

Eine Abkürzung, die viele Entwickler anlegen: ln -s bin/php/console console, dann ./console list.

Schritt 3: ausliefern

./console exp:velocity start

Velocity, der Anwendungsserver von Exponential, wird mit settings/velocity.ini [ServerSettings] Engine=php ausgeliefert: Es führt den eingebauten Server von PHP (php -S) mit dem Router bin/php/velocity-router.php aus, auf dem Port aus [PHPServerSettings] (mitgeliefert 8087). Öffnen Sie die Adresse, die der Installer ausgegeben hat. Die persistente Engine qbix, FrankenPHP und Apache oder nginx mit PHP-FPM sind die Möglichkeiten für die Produktion und für Tests wie in der Produktion (Die Website ausliefern, Lektion 13.2: Velocity für Entwickler).

Schritt 4: Fehler sichtbar machen

./console exp:ini set site.ini/DebugSettings/DebugOutput enabled global --allow-root-user
./console exp:ini set site.ini/TemplateSettings/ShowUsedTemplates enabled global --allow-root-user
./console exp:ini set site.ini/TemplateSettings/TemplateCompile disabled global --allow-root-user
php bin/php/ezcache.php --clear-tag=ini --allow-root-user

Fehler, SQL und die verwendeten Templates erscheinen unter jeder Seite, und Template-Änderungen sind sofort sichtbar. Beschränken Sie die Debug-Ausgabe auf jedem Rechner, den andere erreichen können, auf Ihre Adresse (DebugByIP, DebugIPList[]) (Debug-Ausgabe und Logs für Entwickler, Debug-Leiste). Logs liegen in var/log/.

Schritt 5: die Erweiterungen Ihres Projekts

mkdir -p extension/exp_mysite/settings extension/exp_mysite/design/exp_mysite/templates
git -C extension/exp_mysite init
./console exp:ini add 'site.ini/ExtensionSettings/ActiveExtensions[]' exp_mysite global --allow-root-user

Was hineingehört: Erweiterungen, die Sie schreiben werden. In der Administration angelegte Klassen gehören in Paketen in dieses Repository (Eine Inhaltsklasse anlegen).

Arbeit im Team

  • Eine Entwicklungsinstallation je Entwickler, jede aus denselben Projekt-Repositorys.
  • Klassen und Demo-Inhalte werden in Paketen übertragen, Layouts in Übertragungsdateien von exp:layouts, Einstellungen und Templates in der Erweiterung. Bauen Sie einen Entwicklerrechner daraus neu auf, nie aus einer Kopie von Live.
  • Eine gemeinsame Staging-Installation, bereitgestellt wie Live (Eine Website bereitstellen), ist der Ort, an dem Redakteure und Tester Arbeit sehen, bevor sie live geht.
  • Führen Sie die Prüfungen des Projekts aus, bevor Sie eine Änderung teilen (Prüfungen, bevor Sie eine Änderung teilen).

Regeln, die Entwicklung und Live-Betrieb trennen

RegelWarum
Entwickeln Sie nie auf der Live-Websiteein Tippfehler in einem Template oder einer Einstellungsdatei legt die Seite lahm
Kopieren Sie settings/override/ nie zwischen Rechnernes enthält Passwörter und hostspezifische Werte
Verwenden Sie Kopien von Live-Inhalten nur, wenn Sie müssenLive-Inhalte können personenbezogene Daten enthalten
Testkonten und E-Mails verwenden example.invalidkein Test darf einer echten Person eine E-Mail schicken
Schalten Sie die Debug-Ausgabe vor dem Live-Gang absie verrät Pfade, SQL und Einstellungen

Wenn etwas schiefgeht

SymptomPrüfen Sie
composer install bricht mit einem Fehler zur PHP-Version abphp -v; Exponential 6 braucht PHP 8.0 oder später (PHP 7.4 ohne Support nutzbar)
Eine leere Seitevar/log/error.log und das PHP-Fehlerlog
Eine Template-Änderung wirkt nichtTemplateCompile, die Template- und Override-Caches
Eine neue Klasse wird nicht gefundenphp bin/php/ezpgenerateautoloads.php -e, dann die Caches leeren und den Server neu starten

Mehr: Wenn etwas schiefgeht.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x