Периодически на форуме возникают вопросы о том как делать иконки для меню или меню из графических кнопок
Есть несколько вариантов решения:
- вручную темизировать menu_item по примеру http://www.nicklewis.org/node/843
- или использовать сторонние модули (например [module=imagemenu])
Здесь я опишу как это можно реализовать с помощью модуля [module=imageset] в сязке с menuicon (http://www.drupal.ru/node/21545)
Сделаем меню с иконками аля Drupal.ru
1) готовим набор иконок в графическом редакторе
2) в настройках (mysite/admin/settings/imageset) создаем новый imageset
- имя: item
- размер: 9x9
- ориентация: вертикальная
- ставим галку Fix PNG, если хотим для IE6 правильной прозрачности
- прикрепляем приготовленный набор
3) в настройках селекторов (mysite/admin/settings/imageset/selectors) создаем 3 записи (по количеству состояний):
1. состояние для развернутого меню
- селектор: li.expanded
- вес: 0
- imageset: item
- вариант: 1
2. для свернутого
- селектор: li.collapsed
- вес: 1
- imageset: item
- вариант: 3
3. и для отдельного пункта
- селектор: li.leaf
- вес: 2
- imageset: item
- вариант: 2
4) В настройках Menuicon.icons (mysite/admin/settings/imageset/menuicon-icons) свяжем адрес меню с нужной иконкой
Path: / - иконка будет связана с корнем сайта
Imageset: item
Index: 1
Type: Icon (есть вариант Button для менюшки-кнопки)
Inherit: поставить галку (эта иконка будет применяться для всех вложенных путей)
Здесь приведен пример с одной иконкой для различных состояний
аналогично можно создать набор с иконками для разных путей
Комментарии
Может понадобится, спасибо.
Спасибо.
Спасибо.
Я сделала для каждого пункта меню свою картинку. Но получилось немного не так. Этим модулем мы прикрепляем картинку не к пункту, а к пути. Получилось, что для страницы профиля путь user/* , но с таким путем есть и другие ссылки, например user/*/edit. В итоге, все остальные ссылки такого типа имеют одинаковую картинку.
Как можно этого избежать? Все-таки нужно, чтобы картинка была только в меню.
как вариант для user/*/edit и других путей сделать
path: user/%/edit
imageset: none
inherit: yes