Wordpress Tips

2015.11.16

複数カテゴリがある際にカテゴリ毎に記事を出力する

カテゴリー:

単純に記事をループさせると日付順などでソートされてしまいますが、
今回はカテゴリー毎に記事をループさせる方法を紹介します。

通常であれば下記のような形で記事一覧が作成されてしまいます。

  • -Aカテゴリの記事 20150709公開
  • -Aカテゴリの記事 20150708公開
  • -Bカテゴリの記事 20150707公開
  • -Aカテゴリの記事 20150706公開
  • -Bカテゴリの記事 20150705公開
  • -Cカテゴリの記事 20150704公開
  • -Cカテゴリの記事 20150703公開
  • -Bカテゴリの記事 20150702公開
  • -Cカテゴリの記事 20150701公開

カテゴリーごとに揃えた一覧を作りたい!

<?php
$categories = get_categories('orderby=id&order=ASC');
foreach($categories as $category) :
  echo '</p>
<h5>' . $category->cat_name . '</h5>
<ul>';
  query_posts('showposts=5&cat=' . $category->cat_ID);
    while(have_posts()) :
      the_post();
      echo '<li>' . get_the_title() . '</li>';
    endwhile;
  wp_reset_query();
  echo '</ul>';
endforeach;
?>

上記のコードで一覧を作成すると下記のような形にて書き出されます。

  • Aカテゴリ
    • -Aカテゴリの記事
    • -Aカテゴリの記事
    • -Aカテゴリの記事
  • Bカテゴリ
    • -Bカテゴリの記事
    • -Bカテゴリの記事
    • -Bカテゴリの記事
  • Cカテゴリ
    • -Cカテゴリの記事
    • -Cカテゴリの記事
    • -Cカテゴリの記事

ご相談・ご依頼に関して、まずは

ください。お気軽にどうぞ