Изменение количества выводимых на странице постов
В WordPress есть глобальная настройка, которая учитывает сколько записей показывать на странице - posts_per_page. Лучше всего изменять этот параметр до основного запроса, в целях экономии ресурсов, чтобы не делать повторных запрос. Так, мы можем использовать хук-действие pre_get_posts, чтобы изменить количество выводимых записей на странице.
Этот пример, показывает как перезаписать параметр posts_per_page для страницы архивов произвольного типа записи movie:
add_action( 'pre_get_posts', 'hwl_home_pagesize', 1 ); function hwl_home_pagesize( $query ) { // Выходим, если это админ-панель или не основной запрос. if( is_admin() || ! $query->is_main_query() ) return; if( is_home() ){ // Выводим только 1 пост на главной странице $query->set( 'posts_per_page', 1 ); } // Выводим 50 записей если это архив типа записи 'movie' if( $query->is_post_type_archive('movie') ){ $query->set( 'posts_per_page', 50 ); } }
—
Эта заметка встроена в: pre_get_posts