Вывод блока в определенных терминах

Аватар пользователя Aracon Aracon 21 августа 2005 в 0:05

Есть какой-нибудь модуль, позволяющий выводить блок с текстом только в определенных терминах словаря? Например, я хочу сделать блок с рекламой автомобильного сайта, но чтобы он выводился только в разделе "Автомобили".
Пытался сделать стандартными средствами - можно указать список страниц, где блок виден, но все относящиеся к термину ноды не перечислишь!

Комментарии

Аватар пользователя Troy Troy 21 августа 2005 в 5:40

самое смешное, что задача при кажущейся простоте легко не решаема.
Вопрос интересный. Нет такой в друпале функции, чтобы узнать, на какой ноде мы находимся, (я во всяком случае не нашел, зато нашел на офсайте друпала признание разработчиков что проблему простым способом решить нельзя в данный момент), объект $node из блоков не доступен (а зря), и приходится по-тупому парсить аргументы строки запроса...

короче в финале у меня получилось вот что:
http://pastebin.ru/519

P.S. товарищи, настройте пожалуйста фильтры нормально, на форум php код постить нельзя

P.P.S. feature request на офсайте http://drupal.org/node/4529
тянется с 2003 года, там еще какие-то taxo powered blocks предлагают попробовать, честно признаюсь, смотреть было лениво что за модуль Smile

Аватар пользователя bang bang 21 августа 2005 в 23:22

была похожая задача. в модуле taxonomy_context есть функция, что-то типа get_context, которая возвращает масстив (или объект, не помню), в котором содержится информация о терминах, которым принадлежит текущая страница. ею можно пользоваться в блоках, чтобы определять, что и как выводить.

но внутри эта функция примерно так и делает - парсит строку запроса.