Как в списках меню Joomla вместо текста вставить картинку и убрать текст

27 Июнь, 2011

Давно я не писал в блог, да и не работал давненько тоже! Писал диплом. Слава Богу написал и защитил на 5 и закончил университет! Можете меня поздравить! =)

Сегодня работал над очередным сайтом на CMS Joomla. Одна из задач была вместо обычного текстового меню поставить картинки соответствующие этим разделам.Я пишу этот пост, потому что я столкнулся с этой проблемой и в Интернете не смог найти на нее ответа. Возможно плохо искал. Но у меня такая натура, я лучше покопаюсь сам, чем буду искать решение в Интернете. Больше знать буду. Немного почитав форумы я пришел к выводу, что через админку этого не решить. Пришлось лезть в код. Сначало поговорим о теоретической стороне вопроса.

Вот пример картинки:

Итак. У нас есть уже реализованное меню стандартными модулями joomla. Каждый из пунктов меню отдельный элемент, который имеет свой класс. Обычно этот класс называется itemN, где N – порядковое число нашего меню. Теперь необходимо каждый пункт меню описать в файле стилей и для каждого стиля задать ширину, высоту, позицию и, конечно, картинку, которая будет фоном. Конечно есть очень много расширений joomla, но они здесь не подходят. Нужно  Теперь что делать с текстом? Обычно текст заключается в тег span, которому так же присуждается какой-то класс. Обычно для всех пунктов меню этот класс один. Теперь просто в этом классе делаем текст невидемым.

Теперь рассмотрим практически.
У нас есть вот такая структура уже реализованного меню:

1
2
3
4
5
6
7
8
<ul class="art-menu">
<li id="current" class="active item1">
<a href="#" class="active"><span class="t">Главная</span></a></li>
<li class="item53"><a href="/kypit-igry.html"><span  class="t">Купить игру</span></a></li>
<li class="item54"><a href="/kontakti.html"><span class="t">Контакты</span></a></li>
<li class="item62"><a href="/chavo.html"><span class="t">Чаво</span></a></li>
<li class="item63"><a href="/akciya.html"><span class="t">Акция</span></a></li>
</ul>

Стили для каждого пункта меня, которые нам понадобятся следующие:

.item1
.item53
.item54
.item62
.item63

Теперь для каждого стиля пишем отдельный код в файле стилей. Для примера я выберу только первый стиль .item1. Описание стиля будет таким:

1
2
3
4
5
6
7
li.item1{
position:relative;
width:85px;
height:25px;
background:url(../images/glavnaya.png) no-repeat 0px 5px;
margin:0 7px 0 7px;
}

Из структуры меню мы видим, что стиль для каждого пункта меню, текст которого заключен в тег span является .t. Следовательно для этого стиля, только для тех случаем где он используется в теге span делаем текст не видимым:

1
2
3
4
span.t {
position:relative;
visibility:hidden;
}

Вот и все. Теперь можно спокойно обойтись без всяких дополнительных модулей и плагинов Joomla, а просто покопаться в коде и настроить свой сайт как Вам угодно!



Отличный сайт – cifra.ua где вы можете приобрести газонокосилки! Продажа газонокосилок ограничена! Спешите не пропустить!

На тему «Как в списках меню Joomla вместо текста вставить картинку и убрать текст» 12 комментариев:

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

Главная
Купить игру
Контакты
Чаво
Акция

Спасибо

Дмитрий | 28 Июль 2011 в 11:58

Эти страницы вы создаете в админке, а потом в таблице стилей указываете все правила для полученых классов .item1 .item2 .item3 .item[N]

Masterix | 28 Июль 2011 в 12:09

Вот я интересуюсь, где находится таблица стилей??? поиском прошелся по всем файлам шаблона: нет нигде ничего похожего на это:
1
2
3
4
5
6
7 li.item1{
position:relative;
width:85px;
height:25px;
background:url(../images/glavnaya.png) no-repeat 0px 5px;
margin:0 7px 0 7px;
}

Дмитрий | 28 Июль 2011 в 16:34

Ну таблицы стилей))) CSS файлы) И Вам не нужно искать. Это надо описать для каждого пункта. Создаете страницу и ей присваевается item[N]. Потом открываете код HTML страницы и смотрите какой итем присвоин. И потом описываете его.

Masterix | 28 Июль 2011 в 23:10

А если нету в списке класса “t”

тоесть у меня код такой, где прописать чтоб этот класс присваивался.

1
2
3
<a href="http://localhost/auto-expert-/index.php?option=com_content&amp;view=article&amp;id=2&amp;Itemid=2" rel="nofollow">
Эвакуация
</a>
Денис | 15 Сентябрь 2011 в 12:25

Вам нужно изменить код вывода меню в шаблоне.
Зайдите в саму тему и в файле php, в котором отображается данное меню, вставте нужные Вам теги и классы.

Masterix | 15 Сентябрь 2011 в 16:46

А как прописать ссылку, чтобы при нажатии на картинку открывался материал?

Hrist | 2 Ноябрь 2011 в 21:56

Я думаю, просто картинку обернуть в ссылку и задать для нее тот же путь что и для заголовка.

Masterix | 4 Ноябрь 2011 в 01:56

Спасибо большое автору, очень помог, вот мой сайт http://www.e-ikona.com.ua

Roman | 7 Январь 2012 в 14:17

Всегда пожалуйста! Только к чему Ваш сайт здесь?Я не вижу там меню Joomla кнопками с картинками…

Masterix | 8 Январь 2012 в 13:22

Спасибо! Полезная информация

Lady | 24 Январь 2012 в 11:34

Всегда пожалуйста! Подписуйтесь на RSS и будете всегда в курсе моих новых интересных постов!

Masterix | 25 Январь 2012 в 14:23
451-240-340 lyash89
mrmasterix@gmail.com id811932



  • Детская мебель
    Каталог организаций и сайтов. Cеть мебельных салонов.
    begemot-mebel.ru
PR-CY.ru