ページ毎に表示件数を設定する
pre_get_postsアクションフックを利用してページの種類毎に表示件数を設定する
表示件数は管理画面の設定、表示設定より設定できるが、どのページでも同じ件数になるので、ページの種類によって表示件数を個別に設定したい。
functions.phpに設定
- // ページ毎に表示件数を設定する
- function change_posts_per_page($query) {
- if ( is_admin() || ! $query->is_main_query() )
- return;
- // アーカイブページでは表示件数を14件に設定
- if ( $query->is_archive() ) {
- $query->set( 'posts_per_page', '14' );
- }
- // 検索ページでは表示件数を5件に設定
- if ( $query->is_search() ) {
- $query->set( 'posts_per_page', '5' );
- }
- }
- add_action( 'pre_get_posts', 'change_posts_per_page' );
条件分岐
http://wpdocs.osdn.jp/%E6%9D%A1%E4%BB%B6%E5%88%86%E5%B2%90%E3%82%BF%E3%82%B0