Page 1 of 1

Меню второго уровня

Posted: Thu Feb 12, 2009 9:07 am
by lid3r
Всем доброго времени суток. Возник такой вопрос. Искал ответ, но не нашел. Возможно ли сделать меню второго уровня? То есть, имеем меню серху, например :Клиенты:, переходии на страницу, и на жто страниые в определенном месте имеем второе меню. Надеюсь понятно объяснил.
Один вариант, просто для каждой странице прописать список ссылок, ЦССом их сделать, но тогда редактировать страницу, посредствам WYSIWYG будет тяжело. Что я ищу: Например модуль, в котором прописывается, что для этого меню отображать на этой странице + на другой, а второе меню, только на третьей. Фактически система блоков в Друпал, чтоб было понятно. Модули каккие-то я нащел, но проверять их опытным путем, не осчень хоцца, боюсь что клиенту сломать.
Надеюсь понятно объяснил.

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 9:58 am
by ZYV

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 10:00 am
by lid3r
Честно, искал, не нашел. Спасибо!

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 10:10 am
by lid3r
А именно для таких нужд модуля не написано, кроме von-hamster-овского?

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 12:56 pm
by ZYV
Не, я не понял, а в шаблоне вызов меню нельзя что-ли записать как

{if $page_alias (или как там, посмотри через {get_template_vars}) == "одна страница"}
   {menu такое-то}
{else}
   {menu другое}
{/if}

У тебя вроде бы гораздо проще всё, чем у von-hamster-а. Его модуль - это вообще-то только чтобы запросы к базе сократить и сайт при большой посещаемости ускорить...

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 1:35 pm
by lid3r
точно, вот я бандерлог! Спасибо!

ох уж это меню...

Posted: Thu Feb 12, 2009 1:39 pm
by Il_Burbero
ZYV прав...
Любая конкретная фишка с меню реализуется через Смарти CSS и Javascript

Что мешает вызвать в Главном меню

Code: Select all

{menu number_of_levels='1' template="topmenu.tpl"}
Допустим там будет ссылка на страницу Клиенты (алиас "clients")  с кучей детей Клиент1, Клиент2 и т.д.
На странице Статьи вызывается уже другое меню:

Code: Select all

{menu start_page='clients' template="clients.tpl"}
показывающее только ссылки на детей стр.Клиенты. Никто не запрещает использовать разные шаблоны для меню (один для Главного(топ) меню, другой для вызванного на страничке) при этом.

На оф сайте куча примеров для издевательств над меню http://wiki.cmsmadesimple.org/index.php/User_Handbook/Admin_Panel/Layout/Menu_Manager

Еще можно добавить Смарти http://www.smarty.net/manual/ru/language.function.popup.php фишку, правда нужно скачать библиотеку http://www.bosrup.com/web/overlib/?Download и в основном шаблоне прописать после

Code: Select all

{popup_init src='scripts/overlib.js'}
Зато получаются интересные подсказки если в шаблончике меню сделать что то вроде:

Code: Select all

{foreach from=$nodelist item=node} 
.............
<a href="{$node->url}" {popup text=$node->titleattribute status=$node->menutext left=true fgcolor=#fef7e7}>
(я не стал весь код приводить, главное вызывать popup в теге ссылки.

В общем если мозгами пораскидывать можно сделать все что хочешь, надо только не лениться и раскидывать мозги :)

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 1:44 pm
by lid3r
Я в кодиге не силен, я дизайнер-верстальщик. Поэтому смогу только просток условие написать и самый простой цикл, да и все

Re: Меню второго уровня

Posted: Thu Feb 12, 2009 3:05 pm
by von-hamster
ZYV wrote: У тебя вроде бы гораздо проще всё, чем у von-hamster-а. Его модуль - это вообще-то только чтобы запросы к базе сократить и сайт при большой посещаемости ускорить...
Не только, я еще модуль с локальным меню выкладывал - там можно создавать любые статические менюшки, с любым уровнем вложенности. Которые можно вызывать где угодно, и навешивать на каждый свой шаблон... Правда он на данный момент уже старый и шаблоны использует только из файлов...