Sinn und Unsinn von dynamischen Webseiten
Immer wieder höre ich von Bekannten, sie wollen von den langweiligen statischen Internetseiten weg und dynamische Websites machen. Und ich frage mich dann immer: Wozu? Welche Vorteile haben dynamische Seiten?
Dynamische Seiten machen sicherlich Sinn, wenn schnell wechselnde Daten angezeigt werden (Wetterdaten, Börsenkurse, Stand von Versteigerungen,...). Sinnvoll ist es sicherlich auch dann, wenn man umfangreiche Daten in Datenbanken hat, die man alle präsentieren will (Kataloge, umfangreiche Terminlisten…).
Häufig werden dynamische Websites genutzt um andere Probleme zu lösen. So gibt es Probleme mit der Gestaltung ihrer Navigation innerhalb der Site und der Erstellung von Sitemaps. Ändern sich Inhalte muss die Navigation angepasst werden, was durchaus manuell nicht mehr sinnvoll zu erledigen ist. Aber dazu brauche ich keine dynamischen Seiten, sondern ein Programm, das mir meine Site generiert.
Diese Site wurde mit einem selbstgeschriebenen Ruby-Skript erzeugt. Das Skript nimmt einen Verzeichnisbaum mit HTML-Dokumenten und erzeugt daraus eine komplette Website. Die Navigation wird anhand des Verzeichnisbaumes erstellt. Eine Feinsteuerung erfolgt dabei über Dateinamen, Meta-Tags und Steuerdateien in den einzelnen Verzeichnissen.
SiteGenerator
Verzeichnisnamen
Verzeichnisnamen ergeben den Pfad in der Website. In der Hierarchie höherer Seiten sind über eine "Sie sind hier"-Leiste erreichbar, unterlagerte Seiten sind darunter angeordnet. Eine Gruppierung von untergeordneten Seiten ist möglich.
Durch die Pfadnamen ist eine Steurung möglich:
- !!
- Pfade mit einem !! (zwei Ausrufezeichen) werden nicht veröffentlicht.
- !
- Pfade mit einem ! (einem Ausrufezeichen) werden veröffentlicht, sind aber nicht in die allgemeine Navigation eingebunden.
- []
- Enthält ein Pfad die Zeichen [], so wird der Inhalt in den Klammern [] nicht bei der veröffentlichung verwendet, aber zur Sortierung genutzt.
- -
- Pfadnamen mit einem - (Minus) werden an dem - getrennt. Der erste Teil gibt eine Gruppe, der zweite Teil wird als Zielverzeichnis verwendet. So kann Beispielsweise auf http://www.lickert.net ein Bereich "Info" ertstellt werden.
Diese Website wurde mit dem Sitegenerator erzeugt. Die zugrundeliegende Struktur zeigt [Beispiel/index.html das Beispiel dieser Website]
Seiten
Der Inhalt von HTML-Seiten wird übernommen und durch Navigationselemente ergänzt.
Meta-Tags
Über Meta-Tags sind weitere Navigationsdaten definierbar. Dies sind insbesonders:
- Kurztitel
- PDF-Version der Seite
- ODP- und Amazonverknüpfungen
- Verknüpfung zu der gleichen Seite in anderen Sprachen.
Eine genauere Doku liegt (noch) nicht vor.
Steuerdatei
Jedes Verzeichnis kann eine Steuerdatei
site.txt
enthalten. In der Steuerdatei kann
festgelegt werden:
- Alternative Namen von Unterverzeichnissen
- Titel von Seiten
- Sprachverknüpfungen innerhalb von Seiten.
- Links zu anderen Verzeichnissen.
Die meisten Einstellungen sind auch als Meta-tags der einzelnen HTML-Seiten einstellbar.
Beispiele
Diese Site sowie die weiteren Sites unter http://www.lickert.net sind mit dem Sitegenerator erzeugt worden. Unter Beispiel stehen Informationen zu den Originaldaten dieser Website.
Anpassungen auf andere Layouts (ja, mein Layout ist langweilig) sind mittels CSS einfach möglich.
Eine Anpassung auf etwas komplexere Layoutanpassungen sind möglich, so habe ich beispielsweise den Sitegenerator etwas modifiziert und erzeuge damit verschiedene Websites des Verkehrsclub Deutschland e.V. (VCD):