Funktionsweise des CMS

Mit aitsu Webseiten einfach schneller bauen

Jedes CMS-Webprojekt beginnt mit Layouts, Modulen und Templates.

  • Layouts beschreiben die grafische Darstellung der Webseite mit XHTML und CSS.
  • Module beinhalten PHP-Code und sorgen für die dynamische Ausgabe von redaktionellen Inhalten wie Text, Bild, Ton und Video.
  • Mit Templates legen Entwickler und Designer fest, welche Module für welche Bereiche im Layout verantwortlich sind.
Standard-CMS
Content-Management mit aitsu:ShortCode

Das Layout

Ein Layout wird in HTML erstellt. An den Stellen, an denen aitsu dynamische CMS-Inhalte ausgeben soll, werden Platzhalter (Container) in XML-Syntax gesetzt. In der Layout-Vorschau werden die Container-Tags entfernt und der Inhalt angezeigt.

Aufbau eines Layouts

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Demo</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>
<body>
    <div>
    <container id="{id}"
               name="{name}"
               types="{type}"
               mode="{mode}"
               default="{default}">
    Inhalte für die Layout-Vorschau
    </container>

    ...

    </div>
</body>
</html>

Aufbau eines Containers

  • {id} Eindeutiger Bezeichner
  • {name} Name des Containers. Wird im Template angezeigt
  • {type} Frei wählbare Typ-Bezeichnung (Navi, Bild, ...)
    • Erleichtert die Modul-Auswahl im Template
  • {mode} Erlaubt sind mandatory | optional | fixed
    • mandatory (Ein Modul muss gewählt werden)
    • optional (Ein Modul kann gewählt werden)
    • fixed (Nur das Default-Modul ist erlaubt)
  • default} Vorgabe des Moduls durch dessen Namen.

Das Modul

Module werden in PHP erstellt. aitsu bietet hier die Einbindung von Zend Framework und Klassen-Autoload.

<?php    
echo "Hallo Welt!";
?>

Shortcodes
Mit aitsu:Shortcode fügen Redakteure Modul-Ausgaben direkt in den Fließtext ein. Übrigens: Vorhandende Contenido-Module werden mit einem einfachen Kommentarblock shortcode-fähig.

<?php

/*
 * @availableAsShortCode
 * 
 * @width "Breite" integer "null"
 * @height "Höhe" integer "null"
 */

 
var_dump($params);

?>

Das Template

Im Template werden Layout und Module miteinander verheiratet. So haben Webdesignern alle Freiheiten bei der Gestaltung der Webseiten. Konfigurationen, z.B. der Ort, an dem die Bilder für eine Galerie liegen, können im Template gespeichert werden.

CMS-Template
Abb. 6: Das CMS-Template in der Anwendung

Die Kategorien

Kategorien werden im CMS ähnlich wie Ordner eines Dateisystems angelegt. Dabei entspricht der Kategoriename dem Linktext auf der Webseite. Unterkategorien entsprechen Untermenüs in der Navigationsstruktur der Webseite.

Kategorien können vor Zugriffen geschützt, verschoben, online und offline gestellt werden. Mit dem Kategorie-Alias und aitsu:ModRewrite wird der Name für die Web-Adresse (URL) bestimmt.

Abb. 7: Kategorienmanagment mit Drag 'n Drop