親ページに子ページ一覧を表示させる

  • 15
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

親ページに子ページ一覧を表示させる方法

wordpressで固定ページを階層化させることはよくあるけど、
親ページには子ページの一覧だけ表示させれば良いということもよくある。

子ページを追加する度に親ページに追加していくのは面倒なので自動で追加されるようなコードを見つけたので備忘録として残します。

<?php
    $child_posts = query_posts( 'numberposts=-1&order=ASC&orderby=post_title&post_type=page&post_parent=' . $post->ID );
    if ( $child_posts ) {
        foreach ( $child_posts as $child ) {
            $c_title = apply_filters( 'the_title', $child->post_title );
            $c_permalink = apply_filters( 'the_permalink', get_permalink( $child->ID ) );
            $c_image_id = get_post_thumbnail_id($child->ID);
            $c_image_url = wp_get_attachment_image_src($c_image_id, '', true);
?>
    <div class="child-pages">
        <a href="<?php echo $c_permalink; ?>">
            <img src="<?php echo $c_image_url[0]; ?>" />
            <p><?php echo $c_title; ?></p>
        </a>
    </div><!-- .child-pages -->
<?php
        }
    }
?>