Bei WordPress hat man die MÖglichkeit die statischen Seiten auszugeben. Dies funktioniert so lange gut, wie man die Startseite nicht abändert. Genau diese MÖglichkeit gibt es aber:
WordPress formatiert den Code auch so vor, dass man mit CSS die MÖglichkeiten zum Verändern der Darstellung dieser ausgegebenen Liste hat. So kann man diese sehr einfach in ein Menü verwandeln. In einer schlechten Ausführung (man lernt ja immer dazu) habe ich das vor einem halben Jahr auf der Projektseite von LEON gemacht. Das seitliche Menü verwendet den Befehl wp_list_pages(). Zusätzlich ist die Startseite nicht der Blog, sondern Home (Einstellungen siehe Screenshot).
Um die Liste nun in ein Menü verwandeln zu kÖnnen, gibt WordPress einige CSS Klassen mit, die man nutzen kann. Nun zum Problem: Für alle Seiten wird die Klasse current_page_item mitgeliefert wenn sie ausgewählt sind, nur für die als Beitragsseite ausgewählte nicht. Das Problem ist bekannt und es gibt inzwischen eine lange Diskussion mit vielen LÖsungsvorschlägen. Zudem hat ein Blog auch schon eine Challenge für eine LÖsung dieses Problems ausgeschrieben.
Eine teilweise funktionierende LÖsung dazu wird im Internet überall propagiert. Ein wenig PHP Code macht es mÖglich, dass die Beitragsseite auch die nÖtige Klasse zugewiesen bekommt. Einzige Voraussetzung: Die Beitragsseite muss im Menü am Anfang oder am Ende stehen. Soll sie in der Mitte stehen, so ist dies soweit ich bisher informiert bin ein ungelÖstes Problem.
Inzwischen habe ich eine Idee entwickelt, wie man das Problem evtl. lÖsen kann. Ich werde mal versuchen ein Plugin dafür zu schreiben, denn mir macht das in letzter Zeit auch immer mehr zu schaffen. Wie ich erzählt habe mÖchte ich WordPress ja als CMS Ersatz einsetzen… Sobald ich soweit bin, werde ich euch natürlich informieren.
Da jetzt immer Öfter Beiträge zu WordPress hier erscheinen gibt’s nun auch eine eigene Kategorie dazu.
Tags: Challenge, CSS, current_page_item, Liste, Menü, PHP, Wordpress, wp_list_pages