Tutorials: echte Erweiterungen Schritt für Schritt bauen
Diese Tutorials gehören zu Teil 3
des Buchs. Jedes baut eine kleine, funktionierende Erweiterung und zeigt jede Datei vollständig, die Befehle, mit denen
Sie sie einschalten, und was Sie sehen sollten. Die PHP-Dateien wurden mit php -l geprüft und, wo es gefahrlos
möglich war, mit geladenem Kernel ausgeführt; die Template-Beispiele wurden von der Template-Engine gerendert.
Zwei Wege zum selben Ergebnis
| Mit den RAD-Werkzeugen | Von Hand | |
|---|---|---|
| Wo | Setup > RAD (/setup/rad) in der Administration | Ihr Editor und ein Terminal |
| Tempo | ein funktionierendes Gerüst in Minuten | Minuten für kleine Dinge, länger für große |
| Was Sie lernen | welche Dateien und Einstellungen ein Mechanismus braucht | warum jede Zeile da ist |
| Am besten für | etwas Neues beginnen; prüfen, dass Sie keine Einstellung vergessen haben | kleine Änderungen; Verständnis; Arbeiten ohne die Administration |
Machen Sie für denselben Mechanismus je eines von beiden und vergleichen Sie die Dateien: So lernen Sie den Aufbau am schnellsten.
Mit RAD
| Tutorial | Baut |
|---|---|
| Der Rundgang durch die RAD-Werkzeuge | den Katalog, die Übersicht, die Zustandsprüfung und wie jeder Assistent funktioniert |
| Ein Template-Operator in fünf Minuten | Operatoren, Funktionen, Fetch-Funktionen und Fetch-Aliase |
| Ein Datentyp | eine neue Art von Feld mit ihren Templates |
| Ein Modul mit Views | ein Modul mit Views und Richtlinien oder ein Modul auf Grundlage vorhandener Tabellen |
| Ein Workflow-Ereignis | einen Workflow-Ereignistyp mit seinen Templates |
| Eine Design-Erweiterung | ein Theme-Gerüst mit Pagelayout, Override und Stylesheets |
| Eine Erweiterung nur mit Einstellungen | Einstellungen, Listener und Anpassungen von Siteaccesses |
| Handler und Kernel-Overrides | einen Handler, der über eine Einstellung benannt wird, und das letzte Mittel |
Von Hand
| Tutorial | Baut |
|---|---|
| Die kleinste Erweiterung in fünf Minuten | Metadaten und Einstellungen, sonst nichts |
| Ein Template-Operator | mysite_greet und mysite_initials |
| Eine Fetch-Funktion | fetch( 'hello', 'newest', ... ) |
| Ein Modul mit einer View | /hello/world/<name> |
| Ein Modul, das durch eine Richtlinie geschützt ist | eine Admin-Seite, die nur manche Rollen öffnen dürfen |
| Ein Datentyp | eine Bewertung von 1 bis 5 |
| Ein Workflow-Ereignis | eine Protokollzeile für jede Veröffentlichung |
| Ein Cronjob-Teil | eine nächtliche Zusammenfassung |
| Ihre eigene Tabelle mit eZPersistentObject | eine Tabelle mit Grüßen samt ihrer Klasse |
| Eine ezjscore-Serverfunktion | einen Ajax-Aufruf, der mit JSON beantwortet wird |
| Ein Custom Tag für Rich Text | ein Tag, das Redakteure in Rich Text verwenden können |
| Eine Erweiterung übersetzen | deutsche Texte für alles oben Genannte |
| Hilfeseiten für Ihre Erweiterung | Seiten und Kontexthilfe im Hilfecenter |
| Ein PHPUnit-Test | Tests, die ohne Datenbank laufen |
Abschlussprojekt
Eine vollständige Erweiterung von der Idee bis zum Release fügt die Teile zusammen und veröffentlicht das Ergebnis, nach Teil 7.
Was Sie brauchen
Eine Entwicklungsinstallation mit eingeschalteter Debug-Ausgabe
(Eine Entwicklungsinstallation einrichten)
und für die RAD-Tutorials einen Administrator mit der Richtlinie setup/setup. Alle Tutorials verwenden den
Erweiterungsnamen mysite_hello; wählen Sie für echte Arbeit Ihr eigenes Präfix.
Verwandte Seiten
- Zurück: Ihre Erweiterung dokumentieren, einschließlich Hilfeseiten
- Weiter: Der Rundgang durch die RAD-Werkzeuge: Setup > RAD
- RAD-Werkzeuge
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
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.