WordPress-Plugin: Fix zu Fold Page Menus
Ich habe ein Plugin für WordPress gesucht, mit dem ich aufklappbare Menüs gestalten kann. Dabei bin ich auf “Fold Page Menus” gestoßen.
Beschreibung von wordpress.org:
Converts the default Page menus into proper clickable hierarchical menus. In the author’s words, “creates menus which expand as you click on them.”
Die Installation war recht einfach, nur es funktionierte mit meiner WP-Version 2.2.2 nicht. Die Menüs wurden zu jeder Zeit voll ausgeklappt angezeigt.
Um das Problem zu lösen, habe ich folgende kleine Änderung im Quellcode vorgenommen:
aus:
global $id, $wpdb;
/*
Find the parents of the pages to be displayed
by working back up the tree from the current page
*/
if (isset($id)) {
$x = $id;
$inclusions = "(post_parent <> " . strval($x) . ")";
wurde bei mir:
global $wpdb, $post;
/*
Find the parents of the pages to be displayed
by working back up the tree from the current page
*/
if (isset($post->ID)) {
$x = $post->ID;
$inclusions = "(post_parent <> " . strval($x) . ")";
Und schon funktioniert das Menü wie gewünscht. Scheinbar wurde die ID der aktuellen Seite nicht richtig übergeben.
Wer das Problem nicht selbst fixen will, kann sich das geänderte Plugin direkt hier herunterladen: fold_page_menus.zip
Installationsanleitung:
- Plugin im Verzeichnis wp-content/plugins speichern und entpacken
- Plugin im Adminmenü unter Plugins aktivieren
- in der sidebar.php fold_page_menus zum Aufruf von wp_list_pages hinzufügen
z.B. wird aus
<?php wp_list_pages('title_li=<h2>Pages'); ?></h2>
die Zeile
<?php wp_list_pages(fold_page_menus().'title_li=<h2>Pages'); ?></h2>
