Функция IS_HOME() в WordPress: использование и примеры кода

Функция IS_HOME() в WordPress

Функция is_home() — это условный тег, который проверяет, отображается ли на сайте страница с последними записями. Обычно это главная страница сайта или стартовая страница блога.

Эта функция похожа на is_front_page().

Как работает is_home()

Работа этой функции зависит от настроек чтения вашего сайта. Вы можете настроить, какая страница будет отображаться главной, а какая — с последними записями:

  • По умолчанию главная страница отображает последние записи.
  • Если вы измените настройки и зададите статическую страницу для главной, а другую — для последних записей, функция будет работать только для страницы с последними записями.

Иными словами, если на главной странице вашего сайта установлена статическая страница, функция is_home() будет возвращать true только на странице, которая назначена как "страница записей".

Функция также работает на страницах с постраничной навигацией, например, на /page/2.

Время выполнения функции:

  • 1 вызов — 0.00005 сек (очень быстро)
  • 50000 вызовов — 0.02 сек (практически мгновенно)

Возвращаемое значение

Функция возвращает:

  • true — если запрос касается блога на главной странице.
  • false — в противном случае.

Использование функции

Чтобы использовать функцию, напишите следующий код:

is_home();

Пример использования

С помощью is_home() вы можете отображать разный контент на главной странице и других страницах. Вот пример:

if ( is_home() ) {
    echo 'Привет с главной страницы.';
} else {
    echo 'Привет с внутренней страницы.';
}

Настройки для главной страницы и страницы записей

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

// Идентификатор статической страницы, которая установлена как главная
get_option( 'page_on_front' );

// Идентификатор статической страницы, установленной как страница записей (последние записи)
get_option( 'page_for_posts' );

Замечания

  • Посмотрите также: is_front_page() — аналогичная функция.
  • Глобальный объект: WP_Query, доступный как $wp_query.

Код функции IS_HOME()

Вот как выглядит код функции is_home():

function is_home() {
    global $wp_query;

    if ( ! isset( $wp_query ) ) {
        _doing_it_wrong( __FUNCTION__, __( 'Условные теги запроса не работают до запуска запроса. На этом этапе они всегда возвращают false.' ), '3.1.0' );
        return false;
    }

    return $wp_query->is_home();
}

Связанные функции

Существует множество других условных тегов, которые могут быть полезны в работе с WordPress:

  • is_404() — проверяет, является ли страница страницей ошибки 404.
  • is_admin() — проверяет, находитесь ли вы в административной панели.
  • is_archive() — проверяет, является ли страница архивом.
  • Другие функции: is_single(), is_page(), is_category() и многие другие, помогающие определить тип запрашиваемой страницы.

Эти функции помогут вам более гибко управлять контентом на вашем сайте.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *