WordPressのテーマを自作する際、デフォルトでは「投稿」のアーカイブは表示されず「あれ?どうやるんだっけ?」ってなることがありませんか?
今回はアーカイブを有効化する方法を紹介したいと思います。
手順① functions.phpにコードを記述する
functions.phpに下記のコードを記述してあげればOKです。
// 「投稿」のアーカイブを有効化
function post_has_archive($args, $post_type)
{
if ('post' == $post_type) {
$args['rewrite'] = true; // リライトを有効に
$args['has_archive'] = 'news'; // 任意のURL
}
return $args;
}
add_filter('register_post_type_args', 'post_has_archive', 10, 2);
上記のコード場合「https://example.com/news」がURLとなります。
archive.phpのテンプレートを作成している場合はこちらが適用されます。ない場合はindex.phpが適用されます。
手順② パーマリングを更新
管理画面の「設定」から「パーマリンク設定」を開き「変更を保存」をクリックして更新します。
上記の「https://example.com/news」にアクセスするとアーカイブ一覧が表示されているかと思います。
以上、「投稿」のアーカイブを有効化する方法でした。
コメント