Здравствуйте, уважаемые коллеги!
Столкнулся со следующей проблемой:
Существуют главные разделы сайта, рассмотрю проблему только на одном разделе - "О компании".
В этом разделе будет подменю, где будут ссылки на материалы, относящиеся к компании. Все эти материлы принадлежат термину "О компании".
Задача: при переходе на любую из страниц, относящихся к термину "О компании" необходимо, чтобы класс у пункта праймари меню "О компании" был active.
Menu Trails отлично подходит для этой задачи, но есть одно но:
Если ссылки в дополнительном меню "О компании" на эту ноду нет - Menu Trails работает как надо. [Скрин 1.jpg]
Если добавить ссылку на эту ноду в доп. меню - нужная ссылка в Primary Links не активная. [Скрин 2.jpg]
А должна быть активной. Как можно исправить эту ошибку?
Комментарии
Это не ошибка, это такая логика работы функции l^api, класс active присваивается ссылке на текущую ноду и ссылке, которая в настройках меню установлена как родитель текущей страницы.
То есть если у тебя есть две страницы, одна с адресом tratata, вторая с адресом tratata2, идешь в настройки меню и создаешь, например, в primary links 2 новых пункта:
Теперь если ты перейдешь на страницу tratata, то у соответствующей ссылки будет класс active, если ты перейдешь на страницу tratata2, то класс active будет и у ссылки на текущую страницу, и у ссылки на страницу tratata. А уже зная об этом ты можешь через css как угодно выделить активные ссылки.
Спасибо, получилось.
Но, выходит, ссылку на одну и ту же страницу надо будет прописывать дважды:
- как дочерний элемент нужного пункта primary links
- в том месте, где и должна быть эта ссылка
Иначе никак?
Немного не понял вопроса. Примари линкс я взял для примера. Можно создать свое меню и работать с ним.