WordPress カスタム投稿タイプの親ページだけの投稿一覧の表示方法
最終更新日 - 公開日 2017.02.25
by

WordPress でカスタム投稿タイプの親ページだけの投稿一覧の表示方法を紹介します。
例えば、階層化したカスタム投稿の親ページの投稿一覧を、サイトマップなどで表示したいときに便利な方法です。
投稿タイプを指定して親の投稿一覧を表示
投稿タイプを指定して親ページのみの投稿一覧の表示方法を紹介します。
紹介する方法は、カスタム投稿タイプを階層化した場合の表示方法です。
カスタム投稿を階層化するには WordPress カスタム投稿タイプを追加する方法をご覧ください。
例えば、階層化した投稿タイプ products
の、親ページだけの投稿一覧を表示するには、次のコードをテンプレートに追加します。
<?php // 投稿タイプを指定して親の投稿一覧を表示
$post_type_slug = 'products'; // 投稿タイプのスラッグを指定
$args = array(
'post_type' => $post_type_slug, // 投稿タイプを指定
'post_parent' => 0 // 親を持たない投稿を取得
);
$the_query = new WP_Query($args); if($the_query->have_posts()):
?>
<ul>
<?php while ($the_query->have_posts()): $the_query->the_post(); ?>
<li><a href="<?php the_permalink(); ?>"><?php echo get_the_title(); ?></a></li>
<?php endwhile; ?>
<?php wp_reset_postdata(); ?>
</ul>
<?php endif; ?>
投稿の取得にはサブループを使用します。
投稿の絞り込みで post_parent
の値で 0 を指定することで、親を持たない投稿を取得することができます。
まとめ
WordPress でカスタム投稿タイプの親ページだけの投稿一覧の表示方法を紹介しました。