Т.к. ответа я не получил, а тема мне кажется интересной, позволю себе привести результаты своих экспериментов.
Сразу говорю, что метод можно существенно улучшить (незначительно переписав для себя модуль 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 и названия пунктов меню можно делать хоть сотню строк. Только неудобно это - вручную прописывать все.