LiveInternetMail.ru
Форум русской поддержки Joomla!® CMS
24.05.2013, 20:18:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 2.5 FAQ Joomla 1.5 FAQ Joomla 1.0 FAQ Правила форума Новости Joomla Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор Тема: Как сделать связанные меню?  (Прочитано 33538 раз)
0 Пользователей и 1 Гость смотрят эту тему.
pedrosoft
Завсегдатай
*****

Репутация: +112/-7
Offline Offline

Пол: Мужской
Сообщений: 408



« : 01.12.2008, 01:51:52 »

Иногда бывает нужно сделать свянные меню (подсветка активный элементов связанного меню, вывод связанных пунктов меню в навигацию) при чем с возможностью разнести их по разным позициям модулей. К счастью в Joomla 1.5 это возможно без всяких хаков:

Рис 1






Для этого заходим в «Пункты меню» и создаем дочерние пункты меню, которые мы хотим вынести в другую позицию модуля:

Рис 2






Теперь начинается самое интересное. Заходим в модуль Главного меню и выставляем там уровни отображения:

Рис 3: Последний уровень равен 1 т.е. дочерние элементы меню в нем отображается не будут.






Создаем еще один модуль меню для Главного меню и тоже выставляем уровни отображения:

Рис 4: Начальный уровень равен 1 т.е. материнские элементы меню в нем отображаться не будут; последний уровень равен 2 т.к. вложенность у нас 2 уровня, поэтому нет смысла ставить больше.








Также можно реализовать еще один тип меню т.н. SPLITMENU:

Рис 5:



Процедура создания ничем не отличается от связанного меню, но дочерние элементы меню обычно имеются не на всех пунктах материнского меню и для того что бы в шаблоне не отображался лишний html-код, которые будет портить верстку нужно присваивать отображение модуля дочернего меню к определенным пунктам материнского меню, что не очень удобно. Для этих целей в Joomla! 1.5.7 появилась новая функция, которая позволяет проверить есть ли дочерние элементы или нет:

Код
<div>
<jdoc:include type="modules" name="mainmenu" style="raw" />
</div>
 
<?php if ($this->countMenuChildren()){ ?>
<div>
<jdoc:include type="modules" name="submenu" style="raw" />
</div>
<?php } ?>


* splitmenu-1.gif (22.86 Кб, 766x341 - просмотрено 18423 раз.)

* splitmenu-2.gif (26.52 Кб, 929x576 - просмотрено 18371 раз.)

* splitmenu-3.gif (19.07 Кб, 941x418 - просмотрено 19184 раз.)

* splitmenu-4.gif (19.7 Кб, 940x421 - просмотрено 18131 раз.)

* splitmenu-5.gif (54.86 Кб, 967x206 - просмотрено 18336 раз.)
« Последнее редактирование: 26.10.2009, 20:58:40 от PaLyCH » Записан
mahoune
Осваиваюсь на форуме
***

Репутация: +1/-0
Offline Offline

Сообщений: 35



« Ответ #1 : 01.12.2008, 05:02:47 »

На днях как раз задумывался о возможности сделать подобный финт, но так элегантно - браво!

2 Модераторы, готов схлопотать бан за неоправданный пост, но не мог не выразить восхищения!
Записан
Svetkin
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 11


« Ответ #2 : 05.01.2009, 23:53:38 »

Добрый день, pedrosoft!!!!!

если не трудно раскажите как Вы сделал верхнее меню поподробнее.

Т.к. ограничение по уровням работает только со стилем - список, а он в горизонтальную линию не строится. Со всемя другими стилями имеющимися в 1.5.8 огранчение по уровням не работает.
Записан
pedrosoft
Завсегдатай
*****

Репутация: +112/-7
Offline Offline

Пол: Мужской
Сообщений: 408



« Ответ #3 : 15.01.2009, 00:08:58 »

наверное из-за того что все остальные стили предназначены для режима совместимости.

чем вас не устраивает список? он строится в горизонтальную линию надо просто поправить css

ну вот например:
#footer {padding:5px 15px 5px 15px;}
#footer ul {margin:0; float:right;}
#footer li {margin:0; padding:0; display:inline; background:none;}
#footer li a {display:inline; padding:0 0 0 10px; line-height:normal; color:#3f3f3f;}
#footer li.active a {text-decoration:none;}
#footer li a:hover {text-decoration:none;}

<div id="footer">
<jdoc:include type="modules" name="menu" />
</div>
Записан
Svetkin
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Пол: Мужской
Сообщений: 11


« Ответ #4 : 16.01.2009, 18:59:27 »

Спасибо!!!!!!
Записан
Kupagust
Гость
« Ответ #5 : 05.03.2009, 21:19:55 »

Спасибо вам  pedrosoft за подробное обьяснение реализации связаного меню.
И все таки вопрос...
А возможно чтоб дочерний пункт меню(например события) выводил в области контента  материал категории в формате блога, а не только стандартный шаблон материала как показано в примере(рис.1),  стандартными средствами Joomla 1.5.7.?
Записан
pedrosoft
Завсегдатай
*****

Репутация: +112/-7
Offline Offline

Пол: Мужской
Сообщений: 408



« Ответ #6 : 11.03.2009, 12:46:30 »

не совсем понял вопрос. тип элемента меню может быть любой
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Рейтинг@Mail.ru Rambler Top100 Powered by SMF 1.1.18 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet