Ein eigenes CMS programmieren II.

In der zweiten Hälfte des Workshops, geht es darum, das kleine CMS noch weiter auszubauen und vollwertig zu machen. Sie binden die Template-Engine Smarty ein.

Inhalt

Programmieren Sie Ihr eigenes CMS II.

Schön das Sie auch im Teil 2 des Workshops dabei sind und ein eigenes Content Management System entwickeln möchten, denn ab jetzt beginnt der spannende Teil der Reise. Sie werden die kostenlose Template-Engine Smarty in das Basic-CMS einhängen und dem bislang recht einfachen CMS einen gewaltigen Schub geben, denn mit Smarty ändert sich einiges. Das bisherige recht statische Templating wird mit der Template-Engine plötzlich sehr lebendig und flexibel.

Was ist die Template-Engine Smarty?

Smarty ist eine so genannte Template-Engine, dabei handelt es sich um eine PHP-Programmsammlung aus nützlichen Bibliotheken, um HTML-Templates auf Ihrer Webseite verarbeiten zu können. Mit solchen, auch Template-Parser genannten Programmen, können Sie Artikel Texte automatisiert in eine HTML-Vorlage einsetzen. In diesen HTML-Vorlagen, genannt Templates, erzeugen Sie zunächst ein ganz traditionelles HTML-Dokument, lassen jedoch alle Texte, Titel, Bilder o.ä. weg, stattdessen setzen Sie an die freien Stellen so genannte Template-Tokens, etwa so:

...
<h1>Das ist eine traditionelle Überschrift</h1>
<p>Sie sollten unbedingt diesen spannenden Artikel nicht verpassen</p>
<p>Und hier folgt der Artikel der Webseite....</p>
<hr>
<p>Autor: Oliver Lohse</p>
...

So sieht ein traditionelles HTML-Dokument aus

...
<h1> {$title}        </h1>
<p>  {$description}  </p>
<p>  {$content}      </p>
<hr>
<p> Autor: {$author} </p>
...

Das gleiche Dokument, jedoch als Smarty HTML-Template mit Template-Tokens

Die Smarty HTML-Vorlage kann jetzt vom System unendlich oft verwendet werden, um beispielsweise Beiträge im Browser mit genau dieser Schablone anzuzeigen.

Wiederverwendbarkeit von Templates

Es liegt also offensichtlich auf der Hand, das Smarty-Templates in Ihrem eigenen CMS mehrfach verwendet werden können, das spart Ihnen viel Zeit, denn Sie müssen die Seite nur einmalig erzeugen und die Template-Engine Smarty füllt sie für jeden Ihrer vielen Beiträge automatisch mit den definierten Inhalten aus und zeigt die Seite im Browser des Lesers an.

Template-Engine Smarty einbinden

Die Template-Engine Smarty sollten Sie also für dieses Projekt über die folgenden Links herunterladen. Alternativ ist sie natürlich im fertigen Coding des Downloads ebenfalls fix und fertig eingerichtet.

Download Smarty

Die Template-Engine wird dann in das CMS eingebunden. Wie das geht, zeigen die folgenden Artikel des Workshops, bzw. die Anleitung der Basis-Installation auf der Projektseite von Smarty:

Smarty Basis-Installation

Download des vollständigen Source-Codes

Das aktuelle und vollständige Content Management System aus dem Workshop des Teil II, steht über den folgenden Link als ZIP-Download bereit:

Download: Basic CMS + Smarty

Den Source-Code können Sie nach herzenslust anpassen, verändern, verbessern und veröffentlichen - allerdings wäre ein Verweis auf CMSWorkbench nett (Netiquette).

Basic-CMS Basic CMS mit Smarty

Anmerkungen zum Programm-Style

Der verwendete Programmstyle ist sehr diskret gehalten, daher werden zum besseren Verständnis teils sehr geschwätzige PHP-Befehle verwendet. Der Befehlsumfang der Sprache PHP bietet natürlich weitaus elegantere und effizientere Funktionen an, aber es schien wichtiger, das dem Einsteiger und Neuling die Abläufe in der Verarbeitung durch klare und einfache Befehle transparent werden.

Beispielsweise ist die Nutzung des Array-Befhels extract() super elegant, jedoch kann der Einsteiger nur schwer erkennen was dieser Befhel im Arbeitsspeicher tut, daher sind traditionelle Array-Operationen besser geeignet. Der erfahrene Entwickler kann dies natürlich gerne anpassen.

Ebenfalls sollte beachtet werden, das viele Objekt-Attribute als public definiert wurden, um so mögliche Fehlerquellen im Prototyp zu minimieren. Aus Sicherheitsgründen können diese später selbstverständlich auf private geändert werden, damit ein gesicherter Zugriff über Objekt-Methoden erfolgt (Getter und Setter).


0

Affiliate WordPress 6 - Das umfassende Handbuch. Über 1.000 Seiten zu WordPress inkl. Themes, Plug-ins, WooCommerce, SEO und mehr

WordPress 6 - Das umfassende Handbuch. Über 1.000 Seiten zu WordPress inkl. Themes, Plug-ins, WooCommerce, SEO und mehr - Mit WordPress mehr als nur ein Blog betreiben - es ist auch ein weitverbreitetes Content-Management-System. Im Buch finden Sie das Rundumpaket für jedes Anwendungsszenario: alle Installationen, Entwicklung und Administration eigener Themes und Plugins und Einstieg in HTML und CSS. Als Fortgeschrittener in Sachen WordPress werden Sie viele wertvolle Tipps und Hilfe finden, etwa bei Themen wie Custom Post Types oder Programmieren von Erweiterungen. So sind Sie schnell in der Lage, Ihr Webprojekt zum Erfolg zu bringen.

Wir können mit so genannten Affiliate-Links den Betrieb der Webseite etwas unterstützen, für Sie als Leser ist das natürlich vollkommen kostenlos.