Последние сообщения – Показать все сообщения

Я очень новичок в этом, и все, что я хочу сделать, не ограничивает количество сообщений, перечисленных на домашней странице. В настоящее время он показывает только 20 из примерно 32, поэтому все старые сообщения больше не отображаются. Есть ли простой способ сделать количество сообщений, отображаемых в последних сообщениях неограниченным, или даже 99?

Solutions Collecting From Web of "Последние сообщения – Показать все сообщения"

В настройках вы можете контролировать количество сообщений, вы не можете установить -1 которые будут неограниченными сообщениями, но вы можете установить очень большое число:

введите описание изображения здесь

Но что только на главной странице?

Многие люди обойдутся этим, поставив пользовательский запрос на своем домашнем шаблоне, но эти люди удваивают работу WP и разбивают разбивку на страницы. Здесь есть два подхода, которые проще и быстрее выполнять

Бесконечная прокрутка

Если у вас много сообщений, это будет работать лучше и загружать только то, что может видеть пользователь. Когда они прокручиваются вниз, загружаются все сообщения, поэтому они никогда не достигают дна (если они не загружают все, что нужно загрузить).

Я бы предложил использовать бесконечный свиток, предоставленный в Jetpack, как хороший пример, поскольку он работает с большинством тем из коробки

Изменение основного запроса перед его извлечением

pre_get_posts – ваш друг! Не выбрасывайте основной запрос и не создавайте новый! Это дорого, трата! Медленный!! Вместо этого сообщите WP, что у вас есть несколько модификаций до того, как он пройдет, и захватит сообщения, например

 add_action( 'pre_get_posts' function( \WP_Query $query ) { if ( !$query->is_main_query() || !$query->is_home() ) { return; // this isnt the homepage, or the main query, skip! } $query->set( 'posts_per_page', 100 ); // 100 posts per page on homepage }); 

Но я хочу ВСЕ записи

—— Опасность впереди ——

Если у вас есть 30 сообщений и вы хотите показать их все, задайте постов на страницу до 200. Вы никогда не достигнете 200, но, если это произойдет, ваш сайт не упадет.

Вы не можете предсказать будущее или то, что хочет клиент, а код должен быть устойчивым. Просто потому, что вы можете сказать, что WP для получения каждой отдельной записи не означает, что она способна. На большом сайте может загрузиться каждый пост в память, база данных может занять слишком много времени или может создать так много HTML, браузер никогда не заканчивает загрузку и время ожидания. Вот почему пользовательские интерфейсы категорий и тегов используют автозаполнение, а не перечисляют все сразу.

Поэтому установите число очень высокое, чтобы число, которое вы уверены, что никогда не достигнете, но ваш сервер все еще может обрабатывать.

Но если вы чувствуете себя особенно опасно, установите его на -1 . Это принесет все, даже если это слишком много для вашего сервера.

Но у меня только 32 сообщения, это небольшой сайт

Конечно, но через несколько лет ваш клиент может импортировать 5000 сообщений, потому что им нужен сайт, чтобы сделать что-то, чего он не делает прямо сейчас. Возможно, у вас есть ошибка, которая вызывает этот сценарий. Вы можете случайно испортить импорт, и теперь сайт не работает, когда вы пытаетесь его загрузить. Вы можете повторно использовать код на другом сайте, созданном для сотен сообщений, кто знает? Установка его на -1 – это плохая привычка, которая может вызвать у вас головные боли и проблемы в будущем