für ein Relaunch unter Beibehaltung der Optik, aber nun mit XH 1.7.2 , habe ich mir noch einmal Gedanken über ein DropDown-Menü machen müssen. Die Elternelemente des Menüs sollen alle nicht auf Seiten verweisen, sondern lediglich das Menü öffnen. Also so, wie es zum Beispiel auch bei den Dropdowns in Bootstrap ist. Ich finde das sehr elegant, weil damit die größten "Probleme" mit Touch-Geräten Geschichte sind.
Die nötige li() - Methode war auch schnell gemacht; alle Menüpunkte, die Child-Elemente haben, bekommen jetzt einfach href="#" onclick="return false;".
Es gibt also nun "Seiten", die ausschließlich dazu da sind, einen entsprechenden Menüpunkt anzulegen. Inhalte sollen über diese Einträge nicht ausgeliefert werden. Der Ansatz verursacht jetzt natürlich diverse kleine Problemchen:
- wenn schon die erste Seite ($s === 0) Kindelemente hat, kommt beim Seitenaufruf ohne Parameter natürlich die inhaltslose Seite. Hier muss also, wenn nicht im Admin-Mode, zur ersten veröffentlichten ( !hide() ) Seite umgeleitet werden.
- Da man praktisch jede dieser speziellen Seiten auch einfach per Adressleiste aufrufen kann, sollte für diesen Fall, wenn nicht im Admin-Mode, ein 404 geworfen werden.
- Das ganze soll dynamisch, ohne manuell gesetzte Umleitungen und über mehrere Menüebenen funktionieren.
- Als Schmankerl soll der User noch einen kleinen Hinweis bekommen, wenn er im Editor solch eine "Spezial" - Seite lädt.
Geht das denn aktuell nicht eleganter? Beim kurzen Blick auf XH\Pages kam mir aber noch nicht wirklich die Erleuchtung .
LG
Holger