WordPressテーマ作成~カテゴリページに載せるもの追加(記事のカテゴリ・サムネイル・記事タイトル・投稿日・検索結果)~
投稿日
更新日
今回は、カテゴリごとの記事一覧ページを作成していきたいと思います。
例えば、カテゴリ欄であるカテゴリをクリックしたら、そのカテゴリに当てはまるものだけが
表示されるというような感じです。
検索結果のページを前の記事で作っているのですが、それと似ているような感じです。
カテゴリごとの記事ページも、検索ページ同様、全体の一覧とは別のページとして表示しているので、
「archive.php」というファイルを追加していきます(一覧のコピーをした方が早いかも)。
※一覧ページを作成した時の記事はこちら
実際に記述した内容としては、下記となります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<div class="home-main"> <?php if ( have_posts() ) : echo '<ul>' , PHP_EOL; while ( have_posts() ) : the_post(); ?> <li> <div class="label"><?php the_category( ' ' ); ?></div> <div class="article"> <?php the_post_thumbnail( 'full', printf( '<a href="%s">', get_permalink() ), '</a>' ); ?> <time><?php the_time( get_option( 'date_format' ) . ' ' . get_option( 'time_format' ) ); ?></time> <?php the_title( sprintf( '<a href="%s"><h2>', get_permalink() ), '</h2></a>' ); ?> </div> </li> <?php endwhile; echo '</ul>' , PHP_EOL; endif; ?> </div> |
カテゴリが親カテゴリ>子カテゴリになってる場合も、カテゴリとして選択されているものが
表示されるようになっています。
ちなみに、この時、パンくずリストもちゃんと階層になります。
あと、検索ページとは違って、カテゴリは一覧にちゃんと表示されているものから遷移するページなので、
記事が1つも表示されないみたいなことはない想定です。
ちなみに、表示した件数が多い場合は、ページネーション(pagination)も一覧と同様に表示できます。
というか、このブログにページネーションの入れ方書いてなかった…!ので、次に書きます。