Hello,
Du lässt dann (genau dann) das Untermenü ausgeben, wenn der übergeordnete Menüpunkt die aktuelle Seite ist. Bei mehr als nur zwei Menüebenen wird es kompliziert, in diesem Fall musst du zunächst das ganze Array durchsuchen, bis die aktuelle Seite gefunden wird. Dabei ermittelst du einen Pfad, welcher angibt, wo ein Untermenü zu erstellen ist.
um es genau zu nehmen, weiß E. , z.B. aus einem Link auf seine Seite, der irgendwoher kommen kann, ja nur die Bezeichnung oder Nummer der anzuzeigenden Seite.
Nun muss er sich von diesem Datensatz erst einmal bis an den Wurzelpunkt des Menubaumes zurückbewegen, auf dem Weg dahin die LEmente einsammeln und dann von dort aus das Menu aufbauen lassen. Dabei könnte es (im nächsten Entwicklungsschritt) sogar dazu kommen, dass bestimmte Besucher bestimmte Zweige im Menubaum gar nicht sehen dürfen, oder dass bestimmte Menupunkte "not in List" sind, also zwar im Menubaum auf dem Speichermedium vorhanden sind, aber im Menu nicht angezeigt werden sollen, weil z.B. die Auflistung in den Contentbereich (also nicht im Menubereich) hineingetragen werden soll.
Wenn er das dynamisch mit einer Datenbank bauen will, dann muss jedes (Sub-)Menuelement mindestens wissen, zu welchem Parent es gehört.
Ich habe eine solche Navigation mit einer MySQL-Datenbank mal gebaut. Die Funktionen dafür sollten noch auffindbar sein.
Allerdings werden die für Malcom noch eine Nummer zu heftig sein, denn sie berücksichtigen bereits Benutzerrechte, Eigentümer, Sperrvermerke, Trustee-Rechte auch einzelne Seiten oder auch ganze Subbäume etc. Allerdings haben sie damals noch nicht mit <li> und einem sauberen CSS gearbeitet, sondern mit einem total verkorksten CSS und <p> oder <div>
Ein harzliches Glückauf
Tom vom Berg