Die Liste der Unterseiten erscheint auf jeder Seite

Dieser Code zeigt die übergeordnete Seite und eine Liste ihrer Unterseiten an, jedoch nicht die Seite der Großeltern. (Es ist das zweite rote Menü in der linken Seitenleiste hier ).

Es gibt ein Problem damit. Dieser Code gibt eine Liste aller Seiten auf der Website aus, wenn sich der Benutzer auf einer Post- oder Archivseite befindet ( siehe hier ).

Wie verhindere ich das? Dieser Code ist groß und klobig, gibt es eine einfachere Lösung? Danke für die Hilfe.

post_parent); $parent_title = get_the_title($parent); $grandparent = $parent->post_parent; $grandparent_title = get_the_title($grandparent); $current_page_parent = ( $post->post_parent ? $post->post_parent : $post->ID );?> post_parent."&echo=0"); // list the parent page $children .= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0"); // append the list of children pages to the same $children variable if ($children) { ?>   post_parent ==is_page('0')) { $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0'); if ($children) { ?> 

Solutions Collecting From Web of "Die Liste der Unterseiten erscheint auf jeder Seite"

Wenn Sie dies nur für Seiten wünschen, was sinnvoll wäre, was Sie beschrieben haben, dann wickeln Sie einfach den gesamten Code in if ( is_page() ) { ... } .

Wenn du das in eine function bringst, könntest du früh aus dem Weg gehen.

 function wpdev_156446_list_parent_page_tree() { if ( ! is_page() ) { return; } // Your above code here } 

// BEARBEITEN

 function wpdev_156446_list_parent_page_tree() { if ( ! is_page() ) { return; } $parent = get_post($post->post_parent); $parent_title = get_the_title($parent); $grandparent = $parent->post_parent; $grandparent_title = get_the_title($grandparent); $current_page_parent = ( $post->post_parent ? $post->post_parent : $post->ID ); // is the homepage the granparent? = third level page if ($grandparent == is_page('0')) { $children = wp_list_pages("title_li=&include=".$post->post_parent."&echo=0"); // list the parent page $children .= wp_list_pages("title_li=&child_of=".$post->post_parent."&echo=0"); // append the list of children pages to the same $children variable if ($children) { ?>  < ?php } // is the homepage the parent? = second level page } elseif ($post->post_parent ==is_page('0')) { $children = wp_list_pages('title_li=&child_of='.$post->ID.'&echo=0'); if ($children) { ?> 
  • < ?php echo get_the_title(); ?>
  • < ?php echo $children; ?>
< ?php } else {// your else stuff } } }