Teil 1 Vorwort


Was das eigene Content Management System können soll und welche Eigenschaften es haben wird.

Was das CMS kann

Das CMS, welches in den folgenden Teilen des Workshops entsteht, ist eine verkürzte Version eines voll ausgebauten CMS, es macht grundsätzlich alle diese Dinge, die auch ein professionelles CMS kann. Das System wird die folgenden Eigenschaften haben.

  • Kategorien mit unendlicher Schachtelungstiefe
  • Beiträge im Markdown-Format
  • Attributierung der Beiträge mit YAML
  • Kategorien mit Kategoriebeschreibung und Logo
  • Templating mittels HTML-Vorlagen in Bootstrap
  • 100%ige Trennung von Code und Design

Das MVC-Design Pattern

Das CMS entsteht unter Nutzung des so genannten MVC-Patterns und teilt damit die vielen Programme des Content Management Systems in sinnvolle Funktionsgruppen wie Model (Datenmodell), View (Anzeige des Templates) und Controller (Steuerung) auf.

MVC Design MVC Design Pattern für das Basic CMS

Der zentrale Controller übernimmt die Steuerung für dessen Aufgabenbereich, während er über das Model auf Daten zugreift und diese der View als Anzeige im Browser anweist. Der Controller greift in diesem Design nie selbst auf Daten des CMS zu, diese Aufgabe ist ausschließlich dem Model vorbehalten. Ebenfalls haben Model und View keine Verbindung zueinander, der benötigte Datenaustausch der beiden Klassen erfolgt in der Controller-Klasse. Damit ist die Haupt-Logik übersichtlich und nachvollziehbar in einer zentralen Klasse abgelegt.

Das MVC-Pattern, oder auch Entwurfsmuster genannt, ist lediglich als praktikable Vorgabe für die Entwicklung zu betrachten, es bleibt daher jedem Entwickler sebst überlassen, wie streng er diese Vorgaben interpretiert.

Hinweis: Das kleine Basic-CMS trennt den Programmcode zu 100% vom Design, daher wird im Template eingebetteter PHP ignoriert. Der aus einigen anderen CMS bekannte Templating-Style mit <php echo $title; ?> ist in diesem CMS nicht möglich. Erst dadurch wird ein unabhängiges Arbeiten von Entwicklern und Designern sichergestellt, da es keine Überschneidungen der Aufgabenbereiche gibt. Die verabredeten Template-Tokens stellen die einzigen Schnittpunkte dar.

YouTube: 1. Build a CMS using OOP PHP tutorial | PHP MVC design pattern YouTube: 2. Objects in PHP | Build a CMS using OOP PHP tutorial MVC YouTube: 3. PHP Inheritance | Build a CMS using OOP PHP tutorial MVC a Coding Project TecFaetu


Mein Name ist Oliver Lohse. Ich bin diplomierter Wirtschafts-Informatiker und Organisations-Programmierer in verschiedenen Sprachen bzw. Markup-Dialekten, z.B. Java, JEE, COBOL, PHP, Python, MySQL, HTML, CSS, ANSI C, Lisp, Rexx, JavaScript, Scheme, ActionScript 2.0, Maschinensprache, Assembler und JCL. Seit mehr als 25 Jahren arbeite ich in einem großen Softwareunternehmen für Versicherungen in Hannover Niedersachsen.

Oliver Lohse
2024-02-16
ein eigenes CMS entwickeln programmieren
post
Kontakt@Oliver-Lohse.de

Datenschutz

Die Webseite verwendet keinerlei Tracking- oder Speichermechanismen, die einen Rückschluss auf das Leserverhalten und Ihre Identität zulassen. Die Webseite verwendet keine Cookies, denn Cookies haben einen schlechten Ruf.

Impressum

CMSWorkbench ist eine Entwicklerseite über meine Arbeit im Bereich der Content Management Systeme. Die vielen Codeschnipsel sind im wesentlichen als kleine Notizzettel zu werten als das es ausgereifte Beiträge wären.