Определить, является ли страница страницей записей
На странице Настройки чтения вы можете установить "Главную страницу" и "Страницу записей". Вы можете проверить, является ли текущая страница главной с помощью is_front_page();
Существует ли аналогичная функция для "Страницы записей". Я заметил, что is_page();
не работает для этой специальной страницы.
Спасибо
В WordPress существует 7 основных типов шаблонных страниц, которые можно определить следующим образом:
if ( is_main_query() ) {
// Страница ошибки 404
if ( is_404() ) {
;
}
// Главная страница
if ( is_front_page() ) {
;
}
// Архив
if ( is_archive() ) {
;
}
// Всплывающее окно комментариев
if ( is_comments_popup() ) {
;
}
// Поиск
if ( is_search() ) {
;
}
// Отдельная запись (пост, страница, вложение)
if ( is_singular() ) {
;
}
// Домашняя страница - страница блога
if ( is_home() ) {
;
}
}
Функция is_home() указывает на то, что текущая страница является страницей блога.

"Страница записей" обычно представляет собой архив:
- записей категории
- записей метки
- записей по дате (год, месяц...)
- записей главного архива
Каждый из этих вариантов можно проверить с помощью одного из множества условных тегов, таких как:
is_category()
is_tag()
is_date()
is_archive()
И многих других. Для лучшего понимания ознакомьтесь с кодексом http://codex.wordpress.org/Conditional_Tags

Сначала проверяем связанные с блогом элементы, такие как автор, метка, тип записи
function is_blog () {
global $post;
$posttype = get_post_type($post );
return ( ((is_archive()) || (is_author()) || (is_category()) || (is_home()) || (is_single()) || (is_tag())) && ( $posttype == 'post') ) ? true : false ;
}
Теперь проверяем и возвращаем то, что вам нужно
function check_post_type(){
$postType;
if (is_blog())
{
$postType = 'Я запись';
} else
{
$postType = 'Я страница';
};
return $postType;
}
Используйте это как Босс
<?php echo check_post_type();?>
Благодарность Wes Bos

Кратко
Случай A. Нет необходимости определять это внутри основного файла шаблона (index.php), так как он является шаблоном по умолчанию[1].
Случай B. Чтобы определить это внутри шаблона страницы (например: page.php), просто проверьте следующим образом:
get_option( 'page_for_posts' ) == get_the_ID()
Подробности
Я буквально погрузился в исходный код[2], чтобы понять, как WordPress проверяет это значение. Оказывается, он использует выражение get_option( 'page_for_posts' )
для получения ID записи выбранной страницы Страница записей.
Да, для этой цели нет официальной функции-проверки, аналогичной is_front_page()
.
Пока вы знаете ID страницы, которую выбрали, вы можете использовать его для проверки.
Ссылки
WordPress Codex, Разработка тем, codex.wordpress.org/Theme_Development
Исходный код Настройки › Настройки чтения, github.com/WordPress/.../wp-admin/options-reading.php

https://codex.wordpress.org/Conditional_Tags в WordPress Codex говорится, что страницы можно проверять следующим образом:
if ( is_front_page() && is_home() ) {
// Главная страница по умолчанию
} elseif ( is_front_page() ) {
// Статическая главная страница
} elseif ( is_home() ) {
// Страница блога
} else {
// Все остальные страницы
}
