Как получить значение количества записей на странице по умолчанию из настроек->чтение и общее количество записей?

13 янв. 2013 г., 21:07:20
Просмотры: 55.4K
Голосов: 35

Я хочу получить значение по умолчанию для количества записей на странице (значение, которое установлено в настройках->чтение).

Я искал и пока нашел только способы изменения этого значения через запросы. Проблема в том, что я не хочу менять установленное значение, а просто хочу получить его для целей пагинации. Я думал использовать $something->post_count (возможно я ошибаюсь, но как я понимаю, это возвращает количество отображаемых в данный момент записей), но это может быть неверно в некоторых случаях.

Также как я могу получить общее количество записей?

0
Все ответы на вопрос 1
6
67

Это сохраняется в опции:

$default_posts_per_page = get_option( 'posts_per_page' );

Справка: Параметры get_option

Вы можете увидеть ключи и значения всех доступных опций, вручную введя URL админки:

/wp-admin/options.php

Редактирование

Общее количество записей:

global $wp_query;
$total_posts = $wp_query->post_count;
13 янв. 2013 г. 21:14:55
Комментарии

огромное спасибо, milo, я искал это совсем не там, где нужно.. Но как получить общее количество записей? Разве количество записей не только для текущей страницы?

Yaniv Kossas Yaniv Kossas
13 янв. 2013 г. 21:19:28

@YanivKossas - извините, пропустил эту часть вопроса, Chip добавил ответ.

Milo Milo
13 янв. 2013 г. 21:23:02

post_count возвращает количество записей, отображаемых в данный момент. Это значит, что если у вас установлено posts_per_page равным 3 и у вас 40 записей, то вернется 3. Однако, если у вас, скажем, 5 записей и вы на странице 2, то вернется 2, если это понятно - это не общее количество записей

Yaniv Kossas Yaniv Kossas
13 янв. 2013 г. 21:25:34

если вам нужно общее количество постов для запроса, используйте $wp_query->found_posts. Остаток на последней странице можно определить с помощью found_posts и $wp_query->max_num_pages

Milo Milo
13 янв. 2013 г. 21:28:17

эти возможности относятся к "2013" году... Похоже, они устарели... Есть ли обновления после нескольких обновлений WordPress?

PauloBoaventura PauloBoaventura
7 февр. 2021 г. 12:59:38

@PauloBoaventura прошло 10 лет, а лучших ответов так и нет :)

Steve Moretz Steve Moretz
8 янв. 2023 г. 23:14:40
Показать остальные 1 комментариев