Пейджинг на странице индекса не работает с posts_per_page - PullRequest
0 голосов
/ 12 мая 2010

Я работаю над темой, в которой есть страница проекта и блог. Я хочу оставить для постов в блоге значение по умолчанию, равное 10, поэтому я использовал опцию posts_per_page, чтобы ограничить количество проектов на первой странице, например:

<?php $catID = get_cat_id('Projects');
$number = get_option('grd_portfolio_number');
if(have_posts()) : 
$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts('paged=' . $paged . '&posts_per_page=' . $number . '&cat=' . $catID); ?>
<?php while(have_posts()) : the_post(); ?>

Так что, если я установлю его на 4 (со страницы «Параметры темы», а не настроек), он ограничит первую страницу 4 проектами, но на второй странице ничего не отобразится, но если я перейду к своим настройкам WP и заменю от 10 до 4, он будет правильно отображать остальную часть моего контента.

Я предполагаю, что настройка что-то переопределяет, но я не могу понять, как это исправить.

1 Ответ

0 голосов
/ 09 сентября 2010

Если вы просто хотите изменить посты на странице и сохранить все остальные параметры, как раньше (например, категорию, номер страницы, год в архиве и т. Д.), Просто добавьте только posts_per_page в строку запроса:

// put this at the top of your function
global $query_string;
..
// append the posts_per_page parameter to the other parameters
query_posts($query_string.'&posts_per_page=' . $number . ');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...