Изменяющееся меню

Подскажите пожалуйста как сделать так:

Нужно, чтобы меню (sidebar) менялось в зависимости от рубрики.
То есть, если рубрика "1" то в меню выводится только подрубрики этой рубрики, ну и она сама.
А если рубрика"2" то соответственно все подрубрики этой рубрики.
Пытался что-то сделать с параметром current-cat ( вроде как это текущая категория) при выводе wp_list_categories. Не получилось.

Пробовал <?php the_category(); ?>, но тогда выводится только одна из подрубрик.

Или может проще другую cms выбрать? Посоветуйте пожалуйста.

а есть ли смысл менять админку? проблемы то остануться
вроде вот этого будет достаточно

if(is_category('1') || in_category('1'))
    {
        wp_list_categories('title_li=&include=1&depth=2');
    }

дополни код нужными ID

if(is_category('1') || in_category('1'))
    {
        wp_list_categories('title_li=&include=1&depth=2');
    }

Спасибо! В принципе выход.
Но какой-то индийский код получается.
У меня на сайте много рубрик. Получается мне около двадцати условий писать придётся.

А на счет cms. Говорят WordPress блоговая cms. Вот я и подумал может в другой это предусмотрен такой вывод.

Ну так никто ж не мешает прямо в запросе wp_list_categories указать номер текущей рубрики. Правда, придется или форум читать, или доставать тех, что уже читал 😉

Ну так никто ж не мешает прямо в запросе wp_list_categories указать номер текущей рубрики. Правда, придется или форум читать, или доставать тех, что уже читал ;)

Юрий, Вы уже читали ? )

Даже больше. Я уже писал.

Даже больше. Я уже писал.

Поиском не нашел ответов (
Можете указать ссылку?

Думаете, я помню ссылки на все свои 5 с лишком тысяч постов? 🙂 Ищите $cat

Юрий, какие-нибудь ещё наводки можете дать?
current-cat там не участвует?
К базе надо обращаться или можно ворпресовскими функциями обойтись?
Приблизительно так я так рассуждаю:
создать переменную $CC = current-cat;
if(is_category(‘$CC’) || in_category(‘$CC’))
{
wp_list_categories(‘title_li=&include=$CC&&child_of=$CC &depth=3’);
}
или ерунда все?

wp_list_categories(‘child_of=’.$cat);

wp_list_categories('child_of='.$cat);

Sonika – спасибо. Почти подошло.
А есть параметр типа parent_of.
Нужно, чтобы при попадание в подрубрику в меню оставались и вышестоящие рубрики. А параметр title_li был равен верхней родительской рубрике.
И ещё, где можно почитать про такие переменные типа $cat ?

Боюсь, нигде. Глобальной переменной $cat тоже как бы нет, но она работает. Зато есть функция get_category($cat), возвращающая объект "категория", среди свойств которого есть category_parent. Ну а дальше сплошная "афиметика" 🙂

Anonymous
Отправить
Ответ на: