cat_is_ancestor_of() — является ли указанная категория родительской для другой указанной категории

Функция возвращает true, если $cat1 является родительской рубрикой для $cat2 (вне зависимости от уровня вложенности), возвращает false в обратном случае, а также, если в аргументах функции неправильно задан тип (строки не поддерживаются).

cat_is_ancestor_of( $cat1, $cat2 )
$cat1
(целое число|объект) ID или объект рубрики, здесь нужно указать родительскую рубрику
$cat2
(целое число|объект) ID или объект рубрики, здесь нужно указать дочернюю рубрику

Пример

if ( cat_is_ancestor_of(1, 4) ){
	echo 'Категория с ID = 4 является дочерней для категории с ID = 1';
}

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

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

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля — пишите мне.

Комментарии 4

  • Наталия:

    А как можно проверить является ли категория дочерней по отношению к какой-нибудь другой без конкретных ID?

    Мне это нужно для вывода заголовков архивных страниц. Сейчас архивная страница любой категории имеет заголовок "Рубрика такая-то". А нужно, чтобы в случае, если категория дочерняя заголовок был "Подрубрика такая-то".

    Формируются заголовки в шаблоне archive.php кодом:

    if ( is_category() ) : single_term_title( '<span class="title-regular">Рубрика: </span>' );

    Как сформулировать условие if категория имеет родительскую?

Оставить комментарий / вопрос

phpjsHTMLCSSSQLПросто код
  Комментарии закрыты.