is_archive() — проверяет, отображается ли в данный момент любая страница архивов постов

Под любой страницей архивов могут подразумеваться:

  • архивы рубрик постов,
  • метки,
  • таксономии,
  • архивы по дате.

На всех этих страницах функция будет возвращать true. При этом для каждой из них существует отдельный условный тег, а is_archive() — это такой обобщенный вариант.

is_archive()

Условный тег не имеет параметров, возвращает true или false.

Пример

if( is_archive() ) {
 
}

Иерархия условных тегов

if( is_archive() ) {
	// какой-нибудь из перечисленных ниже архивов
 
	if( is_category() ) {
		// архив рубрик
 
	} elseif( is_tag() ) {
		// архив меток
 
	} elseif( is_tax() ) {
		// архив произвольной таксономии
 
	} elseif( is_date() ){
 
		if( is_year() ) {
			// архив по годам
 
		} elseif( is_month() ) {
			// архив по месяцам
 
		} elseif( is_day() ) {
			// архив по дням
		}
	}
}
Миша Рудрастых Разработчик WordPress WooCommerce

Миша Рудрастых

Впервые познакомился с WordPress в 2009 году, и после двух лет мучений с Joomla и самописными движками это был просто бальзам на душу. С 2014 года меня можно встретить на WordCamp — официальной конфе по WP в Москве, иногда там выступаю. Также в настоящее время веду курсы по WordPress в Epic Skills в Питере.