サポート » 使い方全般 » termごとに記事を一覧表示する

  • 解決済 yyy111

    (@knon-disign)


    各termに属する記事毎の一覧表示をしたいと考えております。
    出力イメージとしては下記のようにしたいのですが、

    ・term 医師
      記事Aさん
      記事Cさん

    ・term教師
      記事Bさん

    現在は下記のようにtermごとにまとめられずに別個で表示されてしまいます。

    ・term医師
      記事Aさん

    ・term教師
      記事Bさん

    ・term医師
      記事Cさん

     
     
    設定は下記になります。

    wordpressバージョン:3.4.2
    カスタム投稿 human
    タクソノミー1 tax_human
    タクソノミー2 tax_job
    ターム1    human_a, human_b (ユーザー側で追加していく)
    ターム2    job_doctor, job_teacher (ユーザー側で追加していく)

    記事Aさん 医師
    -human_a
    -job_doctor

    記事Bさん 教師
    -human_b
    -job_teacher

    記事Cさん 医者
    -term1 human_c
    -term2 job_doctor

    ソースは下記を記載しております。

    <ul>
    <?php $args = array('post_type' => 'human','posts_per_page' => -1,'paged' => get_query_var( 'paged' ),);?>
    <?php $myposts = get_posts($args); ?>
    <?php
    foreach($myposts as $post) :
         setup_postdata($post);
    ?>
    	<li>
    		<p><?php echo get_the_term_list( $post->ID,'tax_job','',' , '); ?></p>
        	<a href="<?php the_permalink(); ?>"><?php the_title();?></a>
        </li>
    <?php endforeach; ?>
    </ul>

    各termを自動で取得し振り分けて一覧表示する方法をご教授頂けますと幸いです。

    よろしくお願い致します。

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • [記事Aさん] がよくわからないので、
    [記事タイトル A(tax_human) のタクソノミーアーカイブのリンク] にしています。

    タイトルの後ろは、A さんの記事への投稿者アーカイブにすれば、タクソノミー tax_human はいらないような気がします。何か違う意図があってタクソノミーにしているのかもしれませんが?

    以下、確認はしていません。

    <?php
    $args = array(
        'hideempty' => 1
    );
    $term_objs = get_terms('tax_job',$args);
    foreach ($term_objs as $term_obj) :
    ?>
        <h3><?php echo esc_html($term_obj->name); ?></h3>
    <?php
        $args = array (
            'post_type'   => 'human',
            'tax_job'     => $term_obj->slug,
            'numberposts' => -1,
        );
        $myposts = get_posts($args);
        echo '<ul>';
        foreach ($myposts as $post) :
            setup_postdata($post);
    ?>
            <li>
        	    <a href="<?php the_permalink(); ?>"><?php the_title();?></a> <?php the_terms($post->ID, 'tax_human', '投稿者: ', '', ''); ?>
            </li>
    <?php
        endforeach;
        echo '</ul>';
    endforeach;
    wp_reset_postdata();
    ?>

    yyy111

    (@knon-disign)

    pluto1234様

    ありがとうございます!
    まさしく想定していた出力結果になりました!

    >[記事Aさん] がよくわからないので、

    こちらは【記事タイトル】との意味でした、また、タイトルだけ出力出来れば大丈夫でした。
    わかりづらく記載してしまい申し訳ございません。
    tax_humanは他のカスタム投稿と共通で使用しているタクソノミーなのですが、
    今回やろうとしていた事に対しては不要だったんですね…

    ジャンルごとにforeachで回して、その中でさらに各記事用にforeachで出すやり方など、
    ぼんやりしていた事が、すごく明確になりました。
    まだ、記載頂いたソースの中で理解出来ていない部分が多々ありますので
    勉強致します。

    本当にありがとうございました!

2件の返信を表示中 - 1 - 2件目 (全2件中)
  • トピック「termごとに記事を一覧表示する」には新たに返信することはできません。