0 Пользователей и 1 Гость просматривают эту тему.
  • 2 Ответов
  • 3640 Просмотров

Подскажите, плз, как сделать штатными средствами Joomla (или доп. модулями\компонентами) меню такого плана: http://www.itgorod.ru/tmp/test1.html ?

Само меню можно прямо в шаблоне прописать, но тогда активный пункт не выделяется, а это необходимо.
« Последнее редактирование: 16.10.2008, 16:41:46 от heathen »

Ok, тогда второй вопрос - где производится замена символов < (скобок тегов) на &lt; ? Можно было бы теги прописать прямо в названии меню - если бы не эта замена.

Т.к. ответа я не получил, а тема мне кажется интересной, позволю себе привести результаты своих экспериментов.
Сразу говорю, что метод можно существенно улучшить (незначительно переписав для себя модуль mod_mainmenu), но мою локальную задачу он решает - так что дальше копать я не стал.

Чтобы получить (почти) стандартными средствами многострочные меню в стиле, ссылка на который дана выше, достаточно сделать следующее:

Закомментарить в файле <JoomlaRoot>/modules/mod_mainmenu/legacy.php строку № 119 (для Joomla 1.5.7):

Код
// $mitem->name = stripslashes(htmlspecialchars($mitem->name));


После этого добавляем в файл стилей template.css похожий код:

Код
/* header Top-nav */
#head-menu
{
margin: 0 auto;
text-align:center;
position: absolute;
vertical-align: middle;
z-index: 100;
background:#860038;
color:#f3f6f8;
width: 100%;
}

#head-menu ul
{
display:block;
list-style-type:none;
}

#head-menu ul li
{
display: inline;
}

#head-menu ul li a span
{
font-size:19pt;
font-weight: bold;
margin: 0 0 50px 0;
}

#head-menu ul li a {
background:#f3f6f8;
color:#860038;

width: 25%;

height: 55px;
text-align:center;
text-decoration: none;
font-size:9pt;
font-weight:normal;
vertical-align: middle;
float: left;
margin: 0;
padding: 10px 0 0 0;
}

#head-menu ul li a:link,#head-menu ul li a:visited
{
background:#f3f6f8;
color:#860038;
}

#head-menu ul li a:hover, #head-menu ul li a:active, #head-menu ul li a:focus, #head-menu #active_menu-nav
{
background:#860038;
color:#f3f6f8;
}


и в файл index.php код для вывода верхнего меню (у меня оно назначено на user3) :

Код
			<div id="head-menu">
<jdoc:include type="modules" name="user3" />
</div>

Названия (текст) пунктов меню должны выглядеть таким образом:
Код
<span>О НАС</span><br />Будьте ближе

В настоящий момент недостатки метода в следующем:
  • чтобы добавить, например, пятый пункт меню, необходимо не только изменить само меню в админке, но и поправить template.css, тег #head-menu ul li a, опция width: 20%;
  • отключена замена символов типа & (амперсанд) на xhtml-чистый вариант amp;, посему рекомендую избегать их употребления в названиях пунктов.

Изменив css и названия пунктов меню можно делать хоть сотню строк. Только неудобно это - вручную прописывать все.
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Пункт меню

Автор s120367

Ответов: 0
Просмотров: 155
Последний ответ 03.06.2018, 13:02:55
от s120367
Большое меню Joomla

Автор Amakeeva

Ответов: 1
Просмотров: 352
Последний ответ 22.01.2018, 13:17:45
от effrit
Как можно отображать имя пользователя в название меню?

Автор selimoff

Ответов: 27
Просмотров: 3410
Последний ответ 02.01.2018, 15:24:44
от logan-19
как сделать пункт меню не кликабельным?

Автор qweqweqwe

Ответов: 13
Просмотров: 6262
Последний ответ 07.09.2017, 01:45:49
от forzi
Сдвинуть пункты меню в левое положение

Автор wectra

Ответов: 6
Просмотров: 617
Последний ответ 12.07.2017, 21:09:01
от wectra