2017年以前の旧ブログ
BLOG2017
通常投稿で使われる wp_get_archives() ですが、これをカスタム投稿でも実装する方法をまとめました。
カスタム投稿作成
まず簡単にカスタム投稿を作成します。
作り方は過去の記事「カスタム投稿タイプを設定する①」を参照。
この時注意する箇所はカスタム投稿タイプの設定で Has Archive を必ず true に設定する事です。
一覧を出力するファイルは archive-カスタム投稿.php になるので、これを作成します。
簡単に内容を
<h3><?php echo(get_the_date( _x( 'Y F', 'monthly archives date format'))); ?></h3>
<?php else:?>
<h3>カスタム投稿</h3>
<?php endif;?>
<div class="article">
<?php while (have_posts()) : the_post(); ?>
<p class="day"><?php the_time('Y年m月d日'); ?></p>
<p class="tit"><a href="<?php the_permalink(); ?>"><?php the_title();?></a></p>
<?php endwhile; ?>
<!-- /.article --></div>
<div class="article">
<p>現在お知らせはありません。</p>
<!-- /.article --></div>
<?php endif; ?>
月間アーカイブリスト出力
wp_get_archives()を用いて月間アーカイブのリスト一覧を出力しますが、今のままでは使えないのでプラグイン「Custom Post Type Permalinks」をインストールします。
これにより、wp_get_archives()でpost_typeが指定できます。
array(
’post_type’ => ‘カスタム投稿タイプ’,
’type’ => ‘monthly’,
)
);?>
出力結果
月間アーカイブ一覧出力
上記「Custom Post Type Permalinks」をインストールする事でパーマリンクをカスタム投稿事に設定する事ができます。
現状のままではクリックした際、404になるので、「設定」 > 「パーマリンク」から「カスタム分類のアーカイブのパーマリンクを変更する。」にチェックを入れ、カスタム投稿タイプのパーマリンクを /%post_id%/ に変更します。
以上で月間アーカイブ一覧ページが表示されます。
他にもwp_get_archivesの値に 'show_post_count' => '1' を入れる事で
こんな感じで投稿記事数を出力する事もできます。
色々カスタマイズしてみてください!