【WordPress】カスタム投稿タイプ毎にアーカイブページの表示件数を変更する方法
カスタム投稿タイプを作成した際に、ページごとにデザインが異なるというケースは多々あるかと思います。この記事ではカスタム投稿タイプ毎にアーカイブページの表示件数を変更する方法をご紹介します。ページネーションにもちゃんと対応します。
やりたいこと
例えば下記のようなカスタム投稿タイプがあったとします。
- ブログ・・・blog
- お知らせ・・・info
- スタッフ紹介・・・staff
それぞれのアーカイブページの件数をブログは「5件」、お知らせは「10件」、スタッフ紹介は「9件」表示したいとします。
設定方法
functions.php に下記のように記述します。
function change_posts_per_page($query) { if ( is_admin() || ! $query->is_main_query() ) return; if ( $query->is_post_type_archive('blog') ) { $query->set( 'posts_per_page', '5' ); } if ( $query->is_post_type_archive('info') ) { $query->set( 'posts_per_page', '10' ); } if ( $query->is_post_type_archive('staff') ) { $query->set( 'posts_per_page', '9' ); } } add_action( 'pre_get_posts', 'change_posts_per_page' );
以上で完了です。上記作成に当たり下記サイトを参考にさせていただきました。
ページネーション(ページャー)の設置方法
ページネーションもコピペで簡単に設置できます。下記記事をご参考ください。
【コピペOK】WordPressにBootstrap4のページネーションを設置する方法【プラグイン無し・解説有り】