サポート » 使い方全般 » タクソノミーで親子孫関係がある記事をすべて一覧表示したい

  • igawan

    (@igawan)


    下記の過去記事を参考にカスタム投稿でページテンプレートにタクソノミーの
    親・子・孫関係がある記事をすべて一覧表示したい場合の処理がわからず行き詰っています。
    https://ja.forums.wordpress.org/topic/7786?replies=7

    ■親Aカテゴリータイトル
      ○子Aカテゴリータイトル
       △孫Aカテゴリータイトル
         ・孫A記事タイトル1
         ・孫A記事タイトル2
         ・孫A記事タイトル3
       △孫Bカテゴリータイトル
         ・孫B記事タイトル1
      ○子Bカテゴリータイトル
         ・子B記事タイトル1
         ・子B記事タイトル2
    ■親Bカテゴリータイトル
      ○子Cカテゴリータイトル
         ・子C記事タイトル1

    1Pで完結するようなCMSになります。
    過去記事を参考に下記のようにしていますが、
    孫カテゴリではなく、子カテゴリとしか認識されません。

    条件分岐が必要だとは思うのですが、ヒントを頂ければ幸いです。

    $categories = get_terms('samplecat','orderby=order&order=ASC&parent=0');
    foreach ( $categories as $cat ) {
    	echo '<h1>' . esc_html($cat->name) . '</h1>';
    	$children = get_terms('samplecat','hierarchical=0&orderby=order&order=ASC&child_of='.$cat->term_id);
    
    	foreach ( $children as $child ) {
    		echo '<h2>' . esc_html($child->name) . '</h2>';
    		$catslug = $child->slug;
    		$myquery = 'post_type=sample&samplecat=' . $catslug . '&showposts=-1';
    	?>
    		<ul>
    		<?php query_posts($myquery); ?>
    		<?php if(have_posts()): while(have_posts()): the_post(); ?>
    		<li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>
    		<?php endwhile; endif; ?>
    		</ul>
    <?php
    	}
    }
    ?>
  • トピック「タクソノミーで親子孫関係がある記事をすべて一覧表示したい」には新たに返信することはできません。