WordPress 月や年別アーカイブ一覧の表示方法
最終更新日 - 公開日 2018.03.22
by
WordPress で月別や年別アーカイブ一覧の表示方法を紹介します。
例えば、ブログのサイドバーに月別アーカイブ一覧を表示したいときに便利な方法です。
liタグでアーカイブ一覧を表示する方法
アーカイブ一覧を表示するには wp_get_archives()
を使用します。
例えば、カスタム投稿タイプのスラッグが blog で、liタグで月別アーカイブ一覧を表示したいときは、次のコードをテンプレートファイルに追加します。
liタグで月別アーカイブ一覧の表示方法
月別にする場合は type の指定を monthly にします。
<ul class="monthly-list">
<?php wp_get_archives( 'post_type=post&type=monthly&show_post_count=1' ); ?>
</ul>
表示される月別アーカイブ一覧の HTML は次のように表示されます。
<ul class="monthly-list">
<li><a href="example.com/wp/blog/date/2018/03?post_type=post">2018年3月</a> (1)</li>
<li><a href="example.com/wp/blog/date/2018/02?post_type=post">2018年2月</a> (1)</li>
<li><a href="example.com/wp/blog/date/2018/01?post_type=post">2018年1月</a> (1)</li>
</ul>
記事のカウントを必要としない場合は show_post_count の値を 0 と指定してください。
wp_get_archives
はループの外でも使用できます。
liタグで年別アーカイブ一覧の表示方法
年別にする場合は type の指定を yearly に変更します。
<ul class="monthly-list">
<?php wp_get_archives( 'post_type=post&type=yearly&show_post_count=1' ); ?>
</ul>
セレクトボックスでアーカイブ一覧を表示する方法
セレクトボックスでアーカイブ一覧を表示する場合は、format に option を指定します。
<select name="archive-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;">
<option disabled selected value>アーカイブ</option>
<?php wp_get_archives( 'type=monthly&format=option&post_type=blog' ); ?>
</select>
数字のお尻に年表記を付けたい
年が表示される場合に「2022」と表示される場合があります。数字の後ろに「年」を付けたい場合は after=年 を指定します。
<select name="archive-dropdown" onchange="document.location.href=this.options[this.selectedIndex].value;">
<option disabled selected value>アーカイブ</option>
<?php wp_get_archives( 'type=monthly&format=option&post_type=blog&after=年' ); ?>
</select>
まとめ
WordPress で月別アーカイブ一覧の表示方法を紹介しました。
カスタム投稿タイプで月別の記事一覧を表示したい場合はWordPress カスタム投稿タイプの月別アーカイブ一覧を表示する方法をご覧ください。