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. Ведь WordPress – это лучший движок для разработки сайтов – как для тех, кто готов использовать заложенную структуру этой CMS, так и для тех, кто предпочитает headless решения.
Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.
Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.
А как можно проверить является ли категория дочерней по отношению к какой-нибудь другой без конкретных ID?
Мне это нужно для вывода заголовков архивных страниц. Сейчас архивная страница любой категории имеет заголовок "Рубрика такая-то". А нужно, чтобы в случае, если категория дочерняя заголовок был "Подрубрика такая-то".
Формируются заголовки в шаблоне archive.php кодом:
Как сформулировать условие if категория имеет родительскую?
Получение ID текущей рубрики:
Я попробовала:
Не работает.