wp query, um untergeordnete Seiten der aktuellen Seite abzurufen


32

Kann mir bitte jemand bei der wp_query helfen.

Ich erstelle eine Vorlagendatei / -schleife, um eine Seite der aktuellen untergeordneten Seiten zu erstellen und zu archivieren.

Diese Abfrage muss automatisch erfolgen, da ich sie auf einigen Seiten verwende.

Dies ist meine Abfrage unten, aber sie gibt nur meine Beiträge anstelle von untergeordneten Seiten zurück.

<?php

$parent = new WP_Query(array(

    'post_parent'       => $post->ID,                               
    'order'             => 'ASC',
    'orderby'           => 'menu_order',
    'posts_per_page'    => -1

));

if ($parent->have_posts()) : ?>

    <?php while ($parent->have_posts()) : $parent->the_post(); ?>

        <div id="parent-<?php the_ID(); ?>" class="parent-page">                                

            <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1>

            <p><?php the_advanced_excerpt(); ?></p>

        </div>  

    <?php endwhile; ?>

<?php unset($parent); endif; wp_reset_postdata(); ?>

Vielen Dank im Voraus für jede Hilfe.

Josh


Versuchen Sie diese Lösung == Kinder von einem Post - WordPress.StackExchange.com/a/123143/42702
T.Todua

Antworten:


70

Sie müssen sich ändern child_ofzu post_parentund auch hinzufügen post_type => 'page':

WordPress-Codex Wp_query Post & Page-Parameter

<?php

$args = array(
    'post_type'      => 'page',
    'posts_per_page' => -1,
    'post_parent'    => $post->ID,
    'order'          => 'ASC',
    'orderby'        => 'menu_order'
 );


$parent = new WP_Query( $args );

if ( $parent->have_posts() ) : ?>

    <?php while ( $parent->have_posts() ) : $parent->the_post(); ?>

        <div id="parent-<?php the_ID(); ?>" class="parent-page">

            <h1><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a></h1>

            <p><?php the_advanced_excerpt(); ?></p>

        </div>

    <?php endwhile; ?>

<?php endif; wp_reset_postdata(); ?>

1
Danke Alter, ich habe das post_parentOriginal ausprobiert, aber 'post_type' => 'page'das ist der Schlüssel. Wird dann standardmäßig von WordPress abgefragt? Ich werde eine Antwort annehmen, wenn es mir erlaubt.
Joshc

Ja, 'post_type' => 'post'ist Standard.
Mrwweb
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.