Как отобразить заголовок/содержимое страницы на странице записей?
Я создал файл home.php и назвал его Blog.
Я установил его как страницу записей, но хотел бы добавить заголовок, который будет отображаться на этой странице (заголовок страницы или содержимое).
Например:
Страница записей:
Заголовок страницы
(Возможно содержимое страницы)
== Записи ==
Заголовок записи
Содержимое записи
Заголовок записи и так далее
Я предполагаю следующее:
- Вы используете статическую главную страницу
- У вас есть отдельная статическая страница, назначенная для отображения архива записей блога
- Вы создали файл шаблона
home.phpв своей теме - Статическая страница, назначенная для отображения записей блога, имеет заголовок Блог
- Вы добавили некоторый контент на эту статическую страницу
Из-за особого, зарезервированного характера home.php, а также page_for_posts, вы не можете использовать обычные методы для доступа к объекту $post для статической страницы Блог. Однако вы можете получить заголовок и контент этой страницы. Ключевым моментом является обращение к ID записи через get_option( 'page_for_posts' ).
Заголовок страницы
Используйте get_the_title():
echo apply_filters( 'the_title', get_the_title( get_option( 'page_for_posts' ) ) );
Контент страницы
Используйте get_post_field():
echo apply_filters( 'the_content', get_post_field( 'post_content', get_option( 'page_for_posts' ) ) );
В обоих случаях оберните вывод в вызов apply_filters(), чтобы заголовок и контент страницы отображались так же, как обычно. В противном случае данные, возвращаемые через get_the_title() и get_post_field(), будут лишены обычного форматирования, которое WordPress применяет через the_title() и the_content() соответственно.
насколько я понимаю, вам нужно single_post_title()