is_year()WP 1.5.0

Срабатывает когда показывается страница-архив с постами за указанный год example.com/2009. Условный тег.

Функция входит в проверку функций is_date() и is_archive(), поэтому, в одной логической цепочке, эту функцию нужно использовать перед указанными функциями, иначе она просто никогда не сработает. См. пример 2.

Работает на основе: WP_Query::is_year()
1 раз — 0.00007 сек (очень быстро) | 50000 раз — 0.01 сек (скорость света)

Хуков нет.

Возвращает

true|false.

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

if( is_year() ){
	// ...
}

Примеры

0

#1 Вывод записи на архивах за год

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

if( is_year() ){
	echo 'Это страница архива за какой-либо год: например, такая ссылка example.com';
}
0

#2 Одновременное использование is_archive() и is_year()

Как правильно строить логическую цепочку с использованием is_archive() и is_year() одновременно:

if( is_year() )
	echo "Страница архива за год.";
elseif( is_archive() )
	echo 'Страница архива: день, месяц, категория, метка и т.д.';
else
	echo 'Это не страница архива';

Сначала идет is_year(), а потом is_archive()

Заметки

  • Global. WP_Query. $wp_query WordPress Query object.

Список изменений

С версии 1.5.0 Введена.

Код is_year() WP 6.4.3

function is_year() {
	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_year();
}