Необходимо определить ID текущей рубрики.
get_cat_id — не?
или get_the_category_by_id
SeVlad, спасибо за отклик.
get_the_category_by_id — сразу не то, ибо если судить по названию, то как раз любая информация о категории доступна по имеющемуся ID. Мне же этот самый айди и надо выяснить.
Вторая функция как-будто работает так: <?php get_cat_ID( $cat_name ) ?>
То есть ей надо скормить название рубрики, ID которой она и выдаст. Это тоже не годится. Мне нужно узнай айди текущей рубрики, о котрой я в общем случае ничего не знаю. То есть текущая и всё тут.
Сегодня рубрик 4 и я могу в общем-то проверить их все по их именам или известным мне айди через условие in_category(). Но сайт будет сдан и контент-менеджеры будут заводить новые рубрики, чьи номера мне сейчас не известны. Мне не нужно перебирать в условиях все рубрики. Нужно написать одно общее для всех условие. Из какой бы рубрики ссейчас не был показан материал, в сайдбаре надо отобразить ссылки на статьи этой же рубрики.
Задача решена. Решение оставляю тут на случай, если у кого-то будет сходная задача.
Устраиваю цикл. в котором перебираю все айди категорий. Если на определенном шаге срабатывает условие in_category(), то этот айди сохраняю.
foreach( (get_the_category()) as $category) {
if ( in_category($category->cat_ID) ) { $cat_ID = $category->cat_ID; }
}
И дальше переменную $cat_ID использую для вывода того, что мне нужно.
а не пробовали
$thisCat = get_category(get_query_var('cat'),false);
$cat = get_cat_ID($thisCat);
Нет. не пробовал, по попробую вечером из дома или в понедельник :))
Спасибо.
get_the_category_by_id — сразу не то, ибо если судить по названию,
не кто копипастнул, сорри 🙂
get_category_by_slug (слаг-то получить думаю сможете)
Или вот пример из кодекса:
<?php
global $post;
$categories = get_the_category($post->ID);
var_dump($categories);
?>
SeVlad, я не могу заранее знать те слуги, какие после меня заведут контент-менеджеры. Раз так, то и сравнивать их названия не могу, но проблему свою я решил через цикл. Показанный вами последний вариант тоже обязательно испробую. )
я не могу заранее знать те слуги, какие после меня заведут контент-менеджеры.
Их и не нужно знать 🙂 Их можно получить, например, из $_SERVER.