前回の記事で月別もしくは年別のアーカイブ(例 2015、2014、2013...)を表示する方法を紹介していますが、今回は年+記事という形式のアーカイブを表示する方法になります。
表示イメージ
-
2015年
- 日付
記事の内容 - 日付
記事の内容 - 日付
記事の内容
- 日付
-
2014年
- 日付
記事の内容 - 日付
記事の内容 - 日付
記事の内容
- 日付
-
2013年
- 日付
記事の内容 - 日付
記事の内容 - 日付
記事の内容
- 日付
会社のウェブサイトであれば「沿革」、アーティストさんのウェブサイトであれば「リリース情報」などに使えるのではないでしょうか。
コード
テンプレートファイルに以下のコードを記入します。
<?php
// 出力する内容を設定
function archiveFunc($year){
query_posts('category_name=[カテゴリースラッグ]&posts_per_page=-1&year='.$year.'&order=ASC');
// category_name=history などスラッグを記入
//posts_per_page は表示する記事数(-1は無制限)
if(have_posts()) :
?>
<dl>
<dt><?php echo $year; ?> 年</dt>
<?php while(have_posts()) : the_post(); ?>
<dd>
<div class="date"><?php the_time('n/j'); ?></div>
<div class="content"><?php the_content(); ?></div>
</dd>
<?php endwhile; ?>
</dl>
<?php endif;
wp_reset_query();
}
$thisyear = date('Y'); // 現在の西暦年を取得
for ($year=$thisyear; $year >= 2000; $year--) {
// $year >= で指定した年から現在の年までの記事を出力(例では2000年から現在まで)
archiveFunc($year);
}
?>
以上です。
上記で設定した関数「archiveFunc()」の詳しい使い方はこちらで以下のページでご確認ください。
https://ja.forums.wordpress.org/topic/1564