У меня задача, выводить на первой странице пагинации 6 постов, а далее по 9. Пагинация на странице рубрики вида category-news.php.
Вот мой код в functions.php:
function limit_posts_per_home_page()
{
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
$first_page_limit = 6;
$limit = get_option('posts_per_page');
if( is_admin() ) {
return;
}
if ( is_category('6') )
{
if ($paged == 1)
{
$limit = $first_page_limit;
}
else
{
$offset = $first_page_limit + (($paged - 3) * $limit);
set_query_var('offset', $offset);
}
}
set_query_var('posts_per_archive_page', $limit);
set_query_var('posts_per_page', $limit);
}
add_filter('pre_get_posts', 'limit_posts_per_home_page');
Но он не срабатывает. Лимит в 6 постов на первой странице не устанавливается