Blog

【WordPress】カスタム投稿の年別アーカイブ表示

2017/04/29

カスタム投稿 プラグイン

カスタム投稿での年別アーカイブを作成しましたので備忘録として残します。

手順は
1.「Custom Post Type Permalinks」プラグインを入れる
2.wp_get_archives()にpost_typeを追加する
3.月別アーカイブ表示のためのテンプレート作成
となります。

参考サイト
WordPressでカスタム投稿の月別アーカイブを作る方法がやっと分かった
カスタム投稿タイプの月別アーカイブ表示

「blog」というカスタム投稿を作成済みであることを前提として進めます。

「Custom Post Type Permalinks」プラグインを入れる
下記からダウンロードしてインストールか「Custom Post Type Permalinks」で検索、インストール
「Custom Post Type Permalinks」

インストール方法は割愛します。
「Custom Post Type Permalinks」を有効にすると、
パーマリンク設定画面にカスタム投稿が追加されます。

「投稿名」でパーマリンクを設定してください。

archive-blog.phpに下記を追加

<ul>
<?php wp_get_archives('type=yearly&post_type=blog'); ?>
</ul>

これで「2017」「2016」などの年別アーカイブリンクが表示されます。
「yearly」を「monthly」にすると月別になります。

参考サイトの「WordPressでカスタム投稿の月別アーカイブ~」では、なぜか月別のアーカイブが作成されず、
どのリンクでも全ての一覧が表示されてしまいました。
(もしかしたら、何か抜けているところがあるのかもしれませんが・・・)

そこで、「カスタム投稿タイプの月別アーカイブ表示」を参考にarchive-blog.phpにタグを追加しました。

<?php
    $args= array(
       'post_type' => blog,
       'posts_per_page' => 20,
       'paged' => $paged
   );
   if(is_year()){
       $setYear=get_the_date('Y');
       $args['year']=$setYear;
   }
  query_posts($args);
?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
//ここにループの内容
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>

date.phpを作成したり、いろいろと試したところ、
やっと、上記の方法で月別アーカイブを表示することができました。



カテゴリー

月間アーカイブ

MORE

ミュージシャンズ・プラザ

神社仏閣ホームーページ制作

ホームページ制作問合せ