【投稿】のアーカイブページを有効にして任意のURLで表示

Wordpresではトップページが「投稿」アーカイブページとして扱われます。
そのためデフォルトでは「投稿」のアーカイブページが無効になっています。
そんな時に必要になる「投稿」のアーカイブページを有効にして任意のURLで表示する方法です。
更新の可能性のあるテーマ(自作ではないテーマ)の場合は子テーマを作成して、子テーマから下記に進んでください。
既存のテンプレートを流用する方法です。

  1. 流用する既存テンプレートの確認
  2. function.phpへの追記
  3. パーマリンク設定の更新

流用する既存テンプレートの確認

一般的にはarchive.phpがある場合はそのファイルが適用されますが、ない場合はindex.phpのテンプレートが適用されることが多いです。
使用するテーマファイルによって適用の優先順位が変わることもありますのでテーマファイルをご確認ください。

function.phpへの追記

例えばアーカイブページのスラッグを「blog」にしたい場合は下記をfunction.phpに下記を記述します。


/* 投稿アーカイブページの作成 */
function post_has_archive( $args, $post_type ) {

	if ( 'post' == $post_type ) {
		$args['rewrite'] = true;
		$args['has_archive'] = 'blog'; //任意のスラッグ名
	}
	return $args;

}
add_filter( 'register_post_type_args', 'post_has_archive', 10, 2 );

パーマリンク設定の更新

【設定→パーマリンク設定→変更を保存】をクリックしてください。
完了したら表示を確認してみましょう。