WordPress タームごとの記事一覧を表示する

WordPressのカスタム投稿タイプのカテゴリー一覧ページなどで使用する、タームに所属する記事一覧の表示方法を紹介します。

実装コード

php

<?php
  $tax_name = 'タクソノミースラッグ';
  $posttype_name = 'カスタム投稿タイプ名';
  $terms = get_terms($tax_name);
  foreach ( $terms as $term ):

    $args = array(
      'post_type' => $posttype_name,
      'tax_query' => array(
        array(
          'taxonomy' => $tax_name,
          'field'    => 'slug',
          'terms'    => $term->slug,
        ),
      ),
    );
    $the_query = new WP_Query( $args );
?>
<!-- ターム名 start -->
<h2><?php echo $term->name ?></h2>
<!-- ターム名 end -->
<?php if ($the_query->have_posts()): ?>
<ul>
<?php while ($the_query->have_posts()) : $the_query->the_post(); ?>
<!-- 記事表示 start -->
<li><a href="<?php echo get_permalink() ?>"><?php the_title() ?></a></li>
<!-- 記事表示 end -->
<?php endwhile; ?>
</ul>
<?php endif; ?>
<?php endforeach; wp_reset_postdata(); ?>
  • タクソノミースラッグにタームが所属するタクソノミースラッグを指定します。
    例えば、タクソノミーがペットで、タクソノミーのスラッグがpetの場合はpetを指定します。
  • カスタム投稿タイプ名にカスタム投稿タイプを指定します。

表示コード

例)サンプルデータ

ターム: 犬(dog)
記事1: 犬のペットについて
記事2: 犬の世話の仕方

ターム: 猫(cat)
記事1: 猫のペットについて
記事2: 猫の世話の仕方

<h2>犬</h2>
<ul>
<li>犬のペットについて</li>
<li>犬の世話の仕方</li>
</ul>

<h2>猫</h2>
<ul>
<li>猫のペットについて</li>
<li>猫の世話の仕方</li>
</ul>

Wordpress デザイナーの私的メモ帳

設計編

基本

投稿関連

固定ページ関連

カテゴリー関連

タクソノミー、ターム関連

テンプレート作成

Advance Custom Fieldの使い方

プラグイン

その他

MW WP Form

Contact Form 7

事例

  • このエントリーをはてなブックマークに追加

プロフィール

kura

個人開発歴5年以上。サイト開発・運営。 ペアでエンジニアとアプリ開発しています。

このサイトではWEBデザイン初心者向けになるべく分かりやすいように解説したり、WEBデザインの便利ツール紹介、開発したりしています。

note