WordPressで投稿記事のカテゴリー一覧とカテゴリー毎の最新投稿記事1つを取得して表示する方法をご紹介します。
WordPressを使用したブログで記事の一覧を表示するのは良く見られますが、カテゴリーの一覧かつそのカテゴリー毎の最新記事のみ取得して表示させてみました。
Contents
ディスプレイ広告
WordPressでカテゴリー毎の最新投稿記事一覧を取得する固定ページの記述
固定ページ用のテンプレート
ファイル名 : page-catlist.php
Template Name : カテゴリー毎の最新記事TPL
を用意します。
PHPファイル(page-catlist.php)の記述は以下の通りです。
<ul> <?php $args = array( 'parent' => 0, //親カテゴリー 'orderby' => 'term_order', 'order' => 'ASC' ); $categories = get_categories( $args ); //カテゴリーリスト情報を取得 foreach( $categories as $category ) : //カテゴリースラッグを指定して最新の1記事を取得 $data = get_posts('post_type=post&order=DESC&orderby=date&showposts=1&category_name='.$category->category_nicename); if(isset($data[0])) { ?> <li style="list-style:none; padding-bottom: 20px;"> <h4><?php echo $category->cat_name; ?></h4> <a href="<?php echo get_permalink($data[0]->ID); ?>"> <?php echo date('Y.m.d', strtotime($data[0]->post_date)); ?> <br> <?php echo $data[0]->post_title; ?> </a> </li> <?php }//end if endforeach; ?> </ul>
WordPressでカテゴリー毎の最新投稿記事一覧を取得する固定ページ内の処理フロー
1.現在のカテゴリー一覧(親カテゴリーのみ)を取得
↓
2.取得したカテゴリー一覧数分ループ
↓
3.カテゴリースラッグを指定し、最新の1記事を取得
↓
4.カテゴリー名、最新記事リンク、日付、タイトルを表示
「カテゴリー毎の最新記事一覧」デモページ
※本サイトで試してみました。表示結果は以下の通りです。
「カテゴリー毎の最新記事一覧」デモページ
※流用される場合は自己責任でお願いします。