Achtung!

Der Webbaukasten wird nicht mehr aktiv betreut und nicht mehr weiter entwickelt. Verwenden Sie stattdessen das CMS-Angebot des RRZE.
Die Dokumentation des CMS-Angebotes finden Sie auf der Website wordpress.rrze.fau.de.

Bild eines Menüs

Abbildung 1: Ansicht eines Hauptmenüs

Diese Anwendung realieiert die Anzeige eines Navigationsmenüs in Form eines Aufklappmenüs.

Aufruf und Einbindung

Die Hauptnavigation läßt sich über zwei Arten aufrufen und nutzen: Über den Aufruf einer URL und über den Einbau eines Server-Side Includes innerhalb einer Webseite.

Einbindung mittels Server-Side Includes

Die Einbindung der Navigation über SSI ist denkbar einfach: An der Stelle, an der im Quelltext der Seite die Navigation eingebunden werden soll, wird die folgende Zeile eingebaut:

<!--#include virtual="/cgi-bin/navigation/navigation.pl" -->

Dieser Aufruf funktioniert in einer HTML-Datei, bei welcher der Webserver serverseitig nach SSI-Befehlen sucht und diese interpretiert. Auf den Webservern des RRZE funktioniert dies bei jeder HTML-Datei, die die Endung .shtml hat.

Aufruf über URL

Für die Nutzung der Navigation für Bookmarks oder anderen Skripten (zum Beispiel bei der Einbindung über ein PHP-Skript) kann man diese auch über eine URL direkt aufrufen:

http://www.example.org/cgi-bin/navigation/navigation.pl
Wobei www.example.org durch den Namen der eigenen Domain ersetzt wird.

Bei Aufruf dieser URL erhält man die Standard-Ansicht der Navigation entsprechend der Konfiguration. Außerdem wird die Startseite als aktive Seite gesetzt. Um die Navigation für spezielle gewählte Seiten aufzurufen, kann man folgende Parameter zusätzlich angeben:

  • Aktive Seite wählen
  • Indexdatei ändern
    • Aufruf: /cgi-bin/navigation/navigation.pl?indexfile=index2.txt
    • Statt der standardgemäßen Indexdatei navigationsindex.txt wird hier eine andere Indexdatei gewählt, nämlich index2.txt. Diese muss jedoch im vorgegebenen Verzeichnis vkdaten liegen.
  • Konfigurationsdatei ändern
    • Aufruf: /cgi-bin/navigation/navigation.pl?conffile=config2.txt
    • Statt der standardgemäßen Indexdatei vorlagen.conf wird hier eine andere Indexdatei gewählt, nämlich config2.txt. Diese muss jedoch im vorgegebenen Verzeichnis vkdaten liegen.
  • Nur die Inhaltsnavigation zeigen
  • Kapitelnummerierung ausschalten
    • Aufruf: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&nodfn=1
    • Beispiel: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&nodfn=1
    • Falls in der Konfiguration eingestellt ist, daß die Kapitelnummerierungen eingeschaltet sind, werden diese mit dem Argument nodfn=1 abgeschaltet. Auch hier ist die Seite Wir über uns als aktive Seite gewählt.
  • Accesskeys ausschalten
    • Aufruf: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&noaccesskeys=1
    • Beispiel: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&noaccesskeys=1
    • Falls in der Konfiguration eingestellt ist, daß die Accesskeys eingeschaltet sind, werden diese mit dem Argument noaccesskeys=1 abgeschaltet. Auch hier ist die Seite Wir über uns als aktive Seite gewählt.
  • Kombinationen
    • Aufruf: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&notopnavigation=1&noaccesskeys=1
    • Beispiel: /cgi-bin/navigation/navigation.pl?uri=/wir-ueber-uns&notopnavigation=1&noaccesskeys=1
    • Dieses Beispiel soll zeigen, daß die obigen Argumente beliebig kombinierbar sind; Die einzelnen Argumente werden einfach mit einem &amp; voneinander getrennt.
      Falls in der Konfiguration eingestellt ist, daß die Accesskeys eingeschaltet sind, werden diese mit dem Argument noaccesskeys=1 abgeschaltet. Ausserdem werden wieder nur die Inhaltspunkte angezeigt. Auch hier ist die Seite Wir über uns als aktive Seite gewählt.

Installation und Konfiguration

Die Installation wird auf der Seite Installation beschrieben.

Die Konfiguration der Navigation, sowie die Einstellungen zur Anzeige werden über die zentrale Konfigurationsdateien vorgenommen.
Eine Änderung der Skripten oder gar eine Programmierung ist nicht notwendig.

Hinweise zum HTML-Quelltext

Bemerkung

Diese Hinweise werden nur benötigt für den Fall,
daß die optische Gestaltung über CSS geändert
werden soll.

Die Navigation wird mit Hilfe von Listen- und <span>-Tags strukturiert, so daß die Navigation auch zugänglich ist, wenn kein Stylesheet vorhanden ist.

Das HTML der Listen ist hierarchisch angeordnet und erlaubt so eine eindeutige Definition der Bereiche.

Verwendete Selektoren

Bei der Genierung des Menpüs werden bis zu zwei Selektoren verwendet, um das Menüs und dessen Teile zu deklarieren:

  • navigation
    Diese Id wird grundsätzlich im ersten, umrandenen <ul> angebenen. Alles innerhalb dieser Liste gehört zum Menü.
  • hauptnavigation
    Wird in der Konfiguration angegeben, daß neben der reinen Inhaltsnavigation auch weitere (technische) Navigationspunkte dargestellt werden, wird neben des umrandenden Selektors navigation auch noch ein Selektor hauptnavigation in einer Unterliste verwendet, die alle reinen Inhaltsseiten beinhaltet.

Beispiel:

<ul id="navigation">		
    <li><a   href="/index.shtml">Startseite</a>
        <ul id="hauptnavigation">
    	    <li><a  href="/aktuelles.shtml">Aktuelles</a>
    	    <li><a  href="/ueber-das-projekt/">Über das Projekt</a>
    	    <li><a  href="/vorlagen/">Vorlagen</a>
    	    <li><a  href="/designs/">Designs</a>
    	    <li><a  href="/downloads/">Downloads</a>
        </ul>
    </li>
    <li><a   href="/inhaltsuebersicht.shtml">Inhaltsübersicht</a>
    <li><a   href="/verzeichnis-a-z.shtml">Verzeichnis A-Z</a>
</ul>

Verwendete Klassen

Folgende CSS-Klassen wurden definiert um eine ausreichende Anpassung der Optik über CSS zu ermöglichen.

  • aktiv
    Beispiele:
    • <li class="on"><a class="aktiv" href="/anwendungen/navigation/">Navigation</a><li>
    • <li><span class="aktiv">Hauptnavigation</span></li>
    Diese Klasse wird verwendet um eine "aktive", gewählte Seite zu markieren. Dies sowohl für die aktuelle Seite, als auch für Oberpunkte, die im Klickpad liegen.
  • on
    Diese Klasse dient dazu, geöffnete Submenüs kenntlich zu machen.
  • last und lastchild
    Diese Klasse definiert den jeweils letzten Listeneintrag eines Menüs. Auf der Hauptebene wird die Klasse last verwendet, während hierarisch untergeordnete Einträge des Menüs mit der Klasse lastchild ausgezeichnet werden.
  • first und firstchild
    Diese Klasse definiert den jeweils ersten Listeneintrag eines Menüs. Auf der Hauptebene wird die Klasse first verwendet, während hierarisch untergeordnete Einträge des Menüs mit der Klasse firstchild ausgezeichnet werden.