Erklärung des WordPress Template Tags wp_list_pages

Kategorie: Wordpress Tipps

Mit dem Template Tag wp_list_pages werden grundsätzlich alle statischen Seiten einer WordPress Installation aufgelistet. Durch die zur Verfügung stehenden Parameter können viele verschiedene Veränderungen vorgenommen und der Code an die invidiuellen Bedürfnisse angepasst werden.

Inhalt

wp_list_pages ohne Überschrift

Angenommen man hat in WordPress die links abgebildete Struktur an Unterseiten angelegt. Dann ergibt sich durch die Eingabe des Codes (<?php wp_list_pages();?> folgende Ausgabe im Frontend:

Die Überschrift Seiten wird automatisch generiert, möchte man eine Ausgabe ohne diese Überschrift erreichen kann man die Funktion um einen Parameter erweitern.

<?php wp_list_pages('title_li=');?>

wird hinter title_li= kein Wert geschrieben, wird die Überschrift weggelassen.

wp_list_pages als korrekte HTML-Liste

Im Frontend wird die Liste nun richtig dargestellt. Allerdings wird semantisch unkorrektes HTML erzeugt, weil der öffnende und schließende <ul> Tag fehlt:

<li class="page_item page-item-4">
<a href=".../erste-seite/">Erste Seite</a></li>
....

Ergänzt man diese beiden unschließenden Tags erhält man folgenden Code zur Erzeugung des semantisch korrekten Codes ohne Überschrift:

<ul>
<?php wp_list_pages('title_li=');?>
</ul>

wp_list_pages Unterseiten ausblenden bzw. anzeigen

Möchte man mehrere Parameter variieren, kann man diese in eine Array verändern und in einer Variable $args speichern. In diesem Fall wird eine Liste der Seiten ohne Überschrift und mit der Tiefe depth=1 erzeugt, es werden also nur die Hauptseiten angezeigt. Um auch die Unterseiten anzeigen zu lassen, müsste man depth=2 in den Code einfügen, dann wird auch die zweite Menüebene berücksichtigt wird.

<?php 
$args=array(
	'depth'        => 1,
	'title_li'     => '',
	);
?>
<ul>
<?php wp_list_pages($args);?>
</ul>

wp_list_pages bestimmte Seiten nicht anzeigen

Durch exclude kann man bestimmte Seiten aus der Auflistung ausschließen. Dazu muss man dem Parameter die entsprechende id der Seite zuweisen. Die id der Seite erfährt man, wenn man sich im Backend mit der Maus über die Seite bewegt. Dann erscheint unten links ein Code der Art …?post=6 und somit hat die Seite die id 6. In unteren Beispielcode werden die zweite Seite (id=6) und die vierte Seite (id=10) ausgeblendet. Der Befehl include hat den gegenteiligen Effekt, hier müssen die Seiten aufgelistet werden, die angezeigt werden sollen, alle andere Seiten werden nicht angezeigt.

<?php 
$args=array(
	'exclude'        => '6,10',
	'title_li'     => '',
	);
?>
<ul>
<?php wp_list_pages($args);?>
</ul>

wp_list_pages nur die Unterseiten einer bestimmten Seite anzeigen

Um nur die Unterseiten einer bestimmten Seite anzeigen zu lassen, muss man wieder die id feststellen und diese id dann dem Element child_of zuweisen. Die Dritte Seite hat die id 8, daher werden durch folgenden Code nur die Unterseiten der Dritten Seite angezeigt.

<?php 
$args=array(
	'child_of'     => '8',
	'title_li'     => '',
	);
?>
<ul>
<?php wp_list_pages($args);?>
</ul>

wp_list_pages per Shortcode die Unterseiten anzeigen lassen

Bei der oben vorgestellten Variante, müssen die ids für jede Seite einzeln rausgesucht und dann in den Code eingetragen werden. Es gibt allerdings auch die Möglichkeit folgende Funktion in die functions.php einzutragen:

function unterseiten_aktive_seite() {
   global $post;
   return '<ul>'.wp_list_pages('title_li=&child_of='.$post->ID).'</ul>';
}
add_shortcode('unterseiten', 'unterseiten_aktive_seite');

Dadurch wird die id der aktiven Seite dynamisch ausgelesen und anschließend werden nur die Unterseiten dieser Seite angezeigt.Durch den Shortcode [unterseiten] kann dieser Shortcode im Backend jeweils auf der gewünschten Seite im Texteditor eingegeben werden und im Frontend werden dann die UNterseiten, der jeweils gerade aktiven Hauptseite angezeigt.

Verwandte Beiträge

Unterschiedliche WordPress single.php pro Kategorie

Die Templatedatei single.php bestimmt das Layout von WordPress Beiträgen. Jeder Beitrag bekommt das gleiche Aussehen, wenn nur die single.php Datei zum Anzeigen von Beiträgen vorhanden ist. Viele WordPress Blogs verfügen

WordPress sicher machen – Praxistipps

WordPress ist das am meisten verbreitete Content-Management-System der Welt. Durch die zahlreichen Blogs und Foren, die sich mit WordPress beschäftigen, erhält man auf fast jede Frage eine Antwort. Diese Popularität

WordPress Backend anpassen

Das Backend von WordPress kann durch einige Tipps erheblich verbessert bzw. verschönert werden. Im Folgenden wird die Umsetzung dieser Tipps anhand von praktischen Beispielen erläutert. Inhalt WordPress Login Formular stylen

WordPress Tipps zu Kategorien

In WordPress können die geschriebenen Beiträge in Kategorien eingeteilt werden, um die Übersichtlichkeit für die Leser zu erhöhen. Die Kategorien sollten möglichst eindeutige und aussagekräftige Namen bekommen. Inhalt WordPress Kategorien

WordPress Hooks – eine Einführung

Wird eine WordPress Seite aufgerufen, werden verschiedene Prozesse nacheinander ausgeführt. Durch einen Hook kann man sich über die functions.php in den WordPress-Code einhaken und diese Prozesse verändern. Die Hooks verbleiben