Моя тема имеет стилизацию по категориям с использованием следующего кода, который вставляет фрагмент текущей категории как класс CSS.
<div class="CategorySpecificStyle
<?php $category = get_the_category(); echo $category[0]->slug; ?>">
<?php echo $category[0]->cat_name; ?>
</div>
Теперь я собираюсь добавить большое количество новых подкатегорий, и кажется глупым добавлять их все в CSS, когда я смогу просто выбрать родительскую категорию текущего поста и применить к ней стили.
Мне удалось получить имя родительской категории:
$parentcat = get_cat_name($category[0]->category_parent);
Но пробелы (и заглавные буквы) - это проблема ... И я не могу получить пулю родительской категории.
Я знаю, что, возможно, где-то пропущен простой шаг, но любая идея будет принята с благодарностью.
источник
Мне нравится предыдущий ответ от @s_ha_dum, но для получения категории верхнего уровня независимо от глубины я использовал то, что считаю более простым решением:
источник
Если это может помочь кому-то ... получить ребенка кота или родителя, в зависимости от того,
0
или1
вы надеваете$category
источник
Вы можете упростить это так:
источник
Следующая функция адаптирована для возврата корневой категории:
Использование:
get_root_category()->slug
источник