WordPress как на ладони
Шаблоны, плагины и темы для настоящих поклонников Elementor. От TemplateMonster.com wordpress jino

is_archive() WP 1.5.0

Условный тег. Срабатывает, когда показывается любая из архивных страниц (страница: категории, метки, автора, даты).

К архивным страницам относятся страницы категорий, меток, авторов и страницы архивов по датам. Т.е. is_archive() включает в себя проверки is_category(), is_tag(), is_author(), is_day(), is_month(), is_year() и т.д.

Также к архивным страницам относятся, страницы произвольных таксономий (одноуровневых или многоуровневых не имеет значения): is_tax().

✈ 1 раз = 0.с = скорость света | 50000 раз = 0.02с = скорость света PHP 7.2.5, WP 4.9.6

Хуков нет.

Возвращает

true/false. true, если это архивная страница и false, если нет.

Использование

<?php if( is_archive() ){ ... } ?>

Примеры

#1. Выведем надпись "Страница категории"

Проверим если это страница категории выведем надпись "Страница категории", а если это любая другая страница архива, выведем на экран надпись "Страница архива":

if( is_category() )
	echo "Страница категории";
elseif( is_archive() )
	echo "Страница архива";

Код is_archive: wp-includes/query.php VER 4.9.8

<?php
function is_archive() {
	global $wp_query;

	if ( ! isset( $wp_query ) ) {
		_doing_it_wrong( __FUNCTION__, __( 'Conditional query tags do not work before the query is run. Before then, they always return false.' ), '3.1.0' );
		return false;
	}

	return $wp_query->is_archive();
}

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

Из метки: archive (архивы записей)

Еще из метки: Условные теги (типов страниц и запросов )

Еще из метки: Условные теги (все)

Еще из раздела: Запросы

Еще из тегов шаблона: Основные

2 коммента
  • Добрый день, можно ли сделать вывод условия архивной страницы для определенного произвольного типа записей?

    <?php if( is_archive('ПРОИЗВОЛЬНЫЙ_ТИП_ЗАПИСЕЙ') ){ ... } ?>

    Например у меня есть сайт с произвольной записью TEST с 'has_archive' => true
    тогда http://site.ru/TEST - Все записи категории
    именно под этот адрес мне и нужен фильтр
    is_archive() срабатывает в архивах для всех типов записей...

    Ответить2 месяца назад #
Здравствуйте, !     Войти . Зарегистрироваться