ConcreteCMS-Erweiterungen planen

Core, Anwendung und Pakete erfüllen verschiedene Aufgaben. Ordnen Sie eine Änderung der passenden Ebene zu, damit sie beim Core-Update erhalten bleibt. Entwickeln Sie wiederholbare Funktionen in einem eigenen Paket.

Die drei Ebenen auseinanderhalten

concrete/ enthält den CMS-Core. Dateien dort dienen als Quelle zum Nachschlagen, aber nicht als Ablage für Projektänderungen. Unter application/ liegen standortspezifische Anpassungen. Ein eigenes Package unter packages/<handle>/ bündelt Theme, Blöcke, Attribute und Installationslogik, wenn diese gemeinsam installiert oder in mehreren Umgebungen betrieben werden sollen. Der Package-Handle ist Teil von Pfaden und Klassennamen; legen Sie ihn vor der Implementierung fest.

Für eine kleine einmalige Änderung kann application/ genügen. Sobald mehrere zusammengehörende Komponenten, ein Upgrade oder eine wiederholbare Installation gebraucht werden, ist ein Paket leichter zu prüfen. Beim Wechsel der Ebene sind Namespaces, Pfade und Besitzverhältnisse mitzudenken. Eine Klasse aus application/ lässt sich nicht allein durch Verschieben der PHP-Datei zu einer Package-Klasse machen.

Die Theme-Verwaltung zeigt installierte Themes und den Einstieg zum Aktivieren oder Prüfen.

Abbildung 1: Das Frontend-Theme ist in der Verwaltung sichtbar; seine Quelldateien gehören zur Anwendung oder zu einem Package.

Lokal beginnen und Änderungen versionieren

Prüfen Sie die tatsächlich laufende Core-Version unter Verwaltung → System & Einstellungen → Concrete aktualisieren. Legen Sie eine getrennte Entwicklungsinstallation mit passender PHP- und Datenbankversion an. Halten Sie das Paket in einer Versionsverwaltung fest; Datenbank, hochgeladene Dateien und Zugangsdaten brauchen getrennte Behandlung. Ein Git-Checkout ersetzt kein Backup der Inhalte.

Beginnen Sie mit einem konkreten redaktionellen Vorgang: etwa ein Bild ändern oder einen Block einfügen. Verfolgen Sie ihn durch Template, Area, Blocktyp und Controller. Erst danach entscheiden Sie, ob ein neues Theme, ein eigener Block oder ein vorhandener Core-Block mit Template gebraucht wird. Blöcke hinzufügen und anordnen erklärt die Sicht der Redaktion; Theme aufbauen und Block entwickeln zeigen die technische Seite.

Änderungen sicher prüfen

Arbeiten Sie zuerst auf einer Testkopie. Nach einer Codeänderung prüfen Sie PHP-Syntax, den relevanten Installations- oder Upgradeweg und die tatsächliche Seite als Besucher. Bei redaktionellen Funktionen gehört der Bearbeitungsmodus dazu: einen Block öffnen, Werte ändern, abbrechen und wieder öffnen. Vergleichen Sie Desktop und Mobilansicht sowie Tastaturbedienung. Prüfen Sie nach einem Upgrade ausdrücklich, ob bereits gespeicherte Inhalte und fremde Objekte unverändert sind.

Zur Orientierung dienen der aktuelle Core, dessen mitgelieferte Themes und Blocktypen sowie die offizielle Entwicklerdokumentation (EN) (externer Link). Ältere Beispiele können andere Namespaces, Assets oder Editor-Versionen zeigen. Übernehmen Sie einen API-Aufruf erst, nachdem er in der Zielversion nachgewiesen wurde. Das Theme dieser Website nutzt beispielsweise Bedrock für Bootstrap 5; eine zusätzliche Bootstrap-Kopie wäre hier eine unnötige zweite Grundlage.

Nächster Schritt: Wählen Sie genau eine kleine Erweiterung und halten Sie fest, welche bestehenden Inhalte davon abhängen. Für eine wiederholbare Auslieferung lesen Sie anschließend Pakete installieren und aktualisieren.

Weiterlesen

Quelle: Concrete CMS Dokumentation (EN) · Stand: ConcreteCMS 9.5.7