Je nach aktiver Navigation nur die 2. Navigationsstufe anzeigen

Angenommen, ein Menü wie folgt:

Parent 1 Child A Child B Parent 1 Child C Child D Child E Parent 2 Child F 

In einem bestimmten Teil meiner Vorlage möchte ich etwas zeigen, abhängig von der aktuellen “Position” im Menü. Wenn sich der Benutzer auf den Seiten ” Parent 1 , ” Child C , ” Child D oder ” Child E , möchte ich ein kleines Menü anzeigen, in dem Parent 1 als Kopfzeile und die untergeordneten Elemente als Links angegeben sind. Ich habe eine Vielzahl von Dingen ausprobiert (Erstellen eines benutzerdefinierten walker-Objekts, Schreiben von css, um nur die Elemente nicht anzuzeigen, die nicht angezeigt werden sollen, usw.). Auch wenn es überhaupt keine Kinder gibt, möchte ich nicht anzeigen das Elternteil sogar auf der eigenen Seite des Elternteils. Macht das Sinn?

Ich möchte kein Plugin, das mir dabei hilft (ich mag es nicht, wenn meine Vorlage von einem Plugin abhängt)

Solutions Collecting From Web of "Je nach aktiver Navigation nur die 2. Navigationsstufe anzeigen"

Versuchen Sie das – ich habe es nicht vollständig implementiert, aber ich habe es getestet und es scheint zu funktionieren. Platziere es in deiner functions.php und rufe < ?php list_child_pages(); ?> < ?php list_child_pages(); ?> in Ihrer Vorlage oder verwenden Sie den [childpages] in Ihrem Editor.

 < ?php // List Child pages of a parent. function list_child_pages() { global $post; if ( is_page() && $post->post_parent ) $childpages = wp_list_pages( 'sort_column=menu_order&title_li=&child_of=' . $post->post_parent . '&echo=0' ); else $childpages = wp_list_pages( 'sort_column=menu_order&title_li=&child_of=' . $post->ID . '&echo=0' ); if ( $childpages ) { ?>  
    < ?php echo $string = $childpages; ?>
< ?php } return $string; } // Add Shortcode for additional support, not just in the theme template add_shortcode('childpages', 'list_child_pages'); ?>