Intereting Posts
wp_mail () не работает, но ответ показывает true Пользовательские типы сообщений не выделяются в меню nav Лучший способ предотвратить повторное дублирование при использовании нескольких циклов Как добавить имя редактора в запись meta byline? Как добавить пользовательскую ссылку в меню с URL-адресом, относящимся к URL-адресу блога Пусть новая роль пользователя в «edit_others_posts» другой роли пользователя, а не своего собственного типа Создание пользовательских типов записей и таксономических архивов и симпатичных URL-адресов Почему я не могу добавить этот фид в RSS-виджет? Как настроить этот настраиваемый цикл? Как добавить пустую запись в кладку? Уведомления обновления базы данных Woocommerce автоматически запускаются на многопользовательском создание пользовательского отображения страницы магазина в архиве woocommerce Как создать еще одну страницу widgets.php Ближайшая почта к дате Получение номера WordPress Flexslider

Как работает страница блога в WordPress: страница блога возвращает идентификатор первого сообщения

Я использую WordPress Static Front Page Process, чтобы назначить Front Page и назначить страницу Posts. Поэтому у меня есть 2 страницы: «front» (front-page.php) и «blog» (home.php).

Для страницы «блог», когда я показываю $post->ID после head init (вне цикла), я не понимаю, почему WordPress отправил мне последний созданный идентификатор сообщения. Он обычно должен отображать идентификатор страницы?

Я прочитал «Вопросы, которые могут уже иметь ваш ответ» в отношении такого случая и возможности использования:

 get_option('page_for_posts') 
  • Но почему WordPress работает так?

  • Существует ли глобальный var?

  • Есть что-то, чего мне не хватает в иерархии шаблонов WordPress?

Спасибо за вашу помощь

Solutions Collecting From Web of "Как работает страница блога в WordPress: страница блога возвращает идентификатор первого сообщения"

Объект $ post содержит данные для основного запроса текущей страницы. Таким образом, в вашем случае основной запрос на вашем front-page.php содержит данные со страницы, которую вы назначаете для своей первой страницы. Однако ваша страница в блоге – это архив и может содержать несколько сообщений. И в обоих случаях вы используете цикл для доступа к этим данным.

Возможно, эта страница поможет объяснить еще кое-что:

https://developer.wordpress.org/themes/basics/the-loop/

Редактировать:

Хорошо, поэтому я думаю, что вам нужно get_queried_object() это вернет идентификатор страницы, когда на первой странице или в блоге. Объект $post содержит данные для первого сообщения в Loop, вы должны думать о странице блога как Архив вместо страницы.