Das neue Skin anpassen

Dieses Dokument beschreibt die Erstellung und Anwendung von 'Skins' im icoyaOpenContent Management System. Dieses Dokument wurde mit Microsoft Word erstellt und mit WordXML automatisch in XML , HTML und HTMLHelp (.chm) konvertiert. Mit WordXML, dem Word-PlugIn der struktur AG erweitern Sie Microsoft Word zu einem leistungsfähigen XML-Werkzeug.


Das neue Skin anpassen

Das neue Skin wurde angelegt und es funktioniert. Nun fehlt allerdings noch der entscheidende Teil. Die eigenen Änderungen. Zunächst sei gesagt, dass es am sinnvollsten ist, zuerst mit einem HTML Editor Ihrer Wahl das Layout der Webseite komplett statisch aufzusetzen. Wenn das geschehen ist, muss dieses Layout noch mit PageTemplate Code erweitert werden. Dabei kommt der grosse Vorteil von PageTemplates zum tragen. Die PageTemplate Syntax ist komplett XML konform und sprengt damit nicht das Layout. Das heisst auch nach dem einfügen der PageTemplate Tags können sie die Seite wie gewohnt in ihrem HTML Editor verändern. Die PageTemplate Tags stören nicht und bleiben erhalten.

Es hat sich als praktikabel erwiesen möglichst viele, in sich abgeschlossene Teile des Layouts wie Header, Footer, JavaScript Block oder CSS nicht in einem einzigen grossen PageTemplate zu halten, sondern für jedes Bausteinchen ein eigenes Template zu erstellen. Aus diesen dann die komplette Webseite generiert wird. Verwenden Sie METAL-Makros für die Integration der einzelnen Templates.

Das erste Makro das jedes icoya OpenContent Objekt verwendet, ist das Metal-Makro main_template/macros/main. Ohne dieses PageTemplate main_template.pt mit einem definierten Makro main ist jedes Skin nutzlos. Dieses Makro benötigt mindestends einen Fill-Slot mit dem Namen main. In diesen Slot wird der Inhalt eines Content-Objektes gerendert. Zum Rendern dieses Inhaltes liefert jedes Content Objekt eine eigene Methode (meist ein PageTemplate) mit. Damit dieses Objekt auch gefunden werden kann, muss das entsprechende Skin-Verzeichnis des Objektes ebenfalls in Ihre Skin-Layer-Definition aufgenommen werden. Ich empfehle Ihnen bei einem neuen Skin immer von einem Vorhandenen auszugehen; das heisst zumindest die Layerdefinition des Basic Skins und den icoya_common Layer in Ihre neue Definition mit aufzunehmen.