Kabinettstückchen

Historischer Entwurf eines Hubeschraubers

Vielseitig, klein und flexibel - Die template engine ConTraption kommt dort zum Einsatz, wo statisches HTML nicht ausreicht und Typo3 übertrieben wäre.

Und wenn sie mal groß ist, will sie ein CMS werden.

Das Prinzip

Was ist eine template engine?

Die Grundidee beim Einsatz einer template engine ist die vollständige Trennung zwischen dem (X)HTML-Gerüst einer Seite und den Inhalten. Vorlagendateien oder templates enthalten Platzhalter, die von der template engine auf dem Webserver mit den entsprechenden Inhalten ersetzt werden. So entsteht die vollständige Seite, die dann an den Browser geschickt wird.

Änderungen am Grundgerüst können an einer einzigen Vorlagendatei vorgenommen werden und wirken sich auf alle Seiten aus, die aus dieser Vorlage erstellt werden. Auf der anderen Seite können auch inhaltliche Änderungen an zentraler Stelle vorgenommen werden, was besonders bei mehrfach verwendeten Inhalten wie zum Beispiel einer Seitennavigation große Vorteile bringt.

Unter der Haube

Wie ist ConTraption aufgebaut?

Die ConTraption engine besteht aus einer Reihe von PHP-Skripten. Die Inhaltsdaten werden in XML-Dateien abgelegt, die HTML-Vorlagen befinden sich in schlichten Textdateien. Die Konfiguration der template engine erfolgt ebenfalls über XML-Dateien.

ConTraption ist plugin-basiert und daher nahezu beliebig erweiterbar. Aktuell umfasst ConTraption neben den Kernkomponenten

  • eine Suchfunktion,
  • ein News-Modul,
  • ein einfaches Blog,
  • einen Terminkalender,
  • ein Plugin zur Einbindung von RSS-Feeds,
  • einen Formularmanager und Formmailer,
  • ein Modul zur Anzeige von (Download-)Ressourcen,
  • eine Bildergalerie und
  • ein einfaches Shopsystem.

Die template engine sowie alle plugins sind auf Mehrsprachigkeit ausgelegt. Valide Vorlagendateien und korrekt ausgezeichnete Inhalte vorausgesetzt, erzeugt ConTraption standardkonformes (X)HTML.

Ein content management system ist ConTraption (noch) nicht, dazu fehlt die webbasierte Bearbeitung von Inhaltsdateien und Konfiguration. Die Inhaltsdateien müssen gegenwärtig noch per Editor bearbeitet und dann auf den Server hochgeladen werden. Auch eine Datenbankanbindung habe ich bisher noch nicht realisiert. Aber das kann auch noch irgendwann werden...

In freier Wildbahn

ConTraption im Einsatz erleben

Abgesehen von confidit.de laufen derzeit folgende Internetpräsenzen auf der ConTraption engine:
» FlightATM Limited
» Kunst-Werk-Statt
» ChristusCentrum Oasis