mod_menu и подписи к пунктам меню (subtitles)

  • 20 Ответов
  • 3943 Просмотров

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

*

St@lker

Всем привет! Возникла необходимость сделать меню с подписями под ними. Что-то вида:

ГЛАВНАЯ       НОВОСТИ
о компании   наши новости

Я знаю что есть сторонние модули которые это делают, а в некоторых "модных" шаблонах используют фреймворки для реализации поставленой задачи (Yootheme к примеру использует WARP).

Я нашел для Joomla 1.5 решение, через добавление в папку HTML в корень шаблона, измененного кода, который ищет к примеру "Главная :: о компании" и заменяет :: о компании на <span>о компании</span>

Хотел спросить, может быть кто-то из местных сторожил встречал подобное под Joomla 2.5? Google не помог в поиске решения данной проблемы.

Спасибо!

*

Fedor Vlasenko

  • ********
  • 3799
  • [+]704 / [-]6
  • Все начинается с Value
Пишете название. Моя любимая  продукция//здесь два пробела. Далее из папки modules/mod_menu/tmpl копируешь файл default_component.php в папку ваш шаблон/html/mod_menu/ (нужно, чтобы изменения сохранились при обновлении)
В default_component.php находишь строку $linktype = $item->title; и заменяешь на
$linktype = str_replace('  ', '<br/>', $item->title);//здесь два пробела '  '
Теперь при вставке двух пробелов ваше меню будет разбито на строки
Вариант с <span>
Спойлер
[свернуть]

*

NightGuard

  • *******
  • 3025
  • [+]378 / [-]7
  • вжжж-вжжж
Poznakomlus, в место двух пробелов лучше использовать | или ~ - они применяются редко, при этом визуально дает разграничение (в пунктах меню).

Т.е. получаем или
Код: php-brief
$linktype = str_replace('|', '<br/>', $item->title);
или
Код: php-brief
$linktype = str_replace('~', '<br/>', $item->title);

Почти аналогично строится подключение модулей в меню.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма

skype: nightguardsrussia - только по рабочим вопросам, любые консультации - платные!

*

Fedor Vlasenko

  • ********
  • 3799
  • [+]704 / [-]6
  • Все начинается с Value
Два пробела для поисковиков. Чтоб карту сайта и подобные которые с меню работают не переделывать ^-^

*

Фей

  • *****
  • 704
  • [+]86 / [-]3
  • skype: bel_ko_d
Народ, вы дампы меню смотрели хоть когда-нибудь в жизни? Я над вами угораю!
Есть поле "Примечание", пишите в него, что вам нужно.
Код
object(stdClass)[72]
  public 'id' => string '108' (length=3)
  public 'menutype' => string 'mainmenu' (length=8)
  public 'title' => string 'Вид' (length=6)
  public 'alias' => string 'vid' (length=3)
  public 'note' => string 'здесь примечание' (length=31)
  public 'route' => string 'vid' (length=3)
  public 'link' => string 'index.php?option=com_........' (length=38)
  public 'type' => string 'component' (length=9)
  public 'level' => string '1' (length=1)
  public 'language' => string '*' (length=1)
  public 'browserNav' => string '0' (length=1)
  public 'access' => string '1' (length=1)
  public 'params' =>


И используете поле "note" как вам хочется.
Поддержка приветствуется: R389709625951 Z385311708634 E421764509818

*

NightGuard

  • *******
  • 3025
  • [+]378 / [-]7
  • вжжж-вжжж
Фей, честно говоря - не смотрел еще, только недавно привычка такая появилась, после разделки модуля новостей.
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма

skype: nightguardsrussia - только по рабочим вопросам, любые консультации - платные!

*

St@lker

Фей, а код есть что бы использовать note?

*

saharin88

скажите пожалуйста как default_component.php шаблонизировать.
я создал в template/моя тема/html/mod_menu/bla.php, и выбрал в админке настройках модуля bla, но мне нужно именно default_component.php править, пробовал bla_component.php, не катит.. :(

*

Фей

  • *****
  • 704
  • [+]86 / [-]3
  • skype: bel_ko_d
именно такое имя и создаете default_component.php и в нем делаете чего хотите
Поддержка приветствуется: R389709625951 Z385311708634 E421764509818

*

Фей

  • *****
  • 704
  • [+]86 / [-]3
  • skype: bel_ko_d
Фей, а код есть что бы использовать note?

давно не заходил, сорри!

в общем
Код
echo (!empty($item->note)? '<span>'. $item->note .'</span>': '' );

Это кусок из default_component:
Код
switch ($item->browserNav) :
default:
case 0:
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 1:
// _blank
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" target="_blank" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 2:
// window.open
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" onclick="window.open(this.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes');return false;" <?php echo $title; ?>><?php echo $linktype; ?></a>
<?php
break;
endswitch;

надо первый код поставить перед каждым из break;
Поддержка приветствуется: R389709625951 Z385311708634 E421764509818

*

zaur111

Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #10 : 07.12.2012, 20:05:12 »
давно не заходил, сорри!

в общем
Код
echo (!empty($item->note)? '<span>'. $item->note .'</span>': '' );

Это кусок из default_component:
Код
switch ($item->browserNav) :
default:
case 0:
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 1:
// _blank
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" target="_blank" <?php echo $title; ?>><?php echo $linktype; ?></a><?php
break;
case 2:
// window.open
?><a <?php echo $class; ?>href="<?php echo $item->flink; ?>" onclick="window.open(this.href,'targetWindow','toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes');return false;" <?php echo $title; ?>><?php echo $linktype; ?></a>
<?php
break;
endswitch;

надо первый код поставить перед каждым из break;
А дальше то что делать, как в админке пункты создать? Т.е. создаю пункт -> название пункта + два пробела субтекст? Что то не получается...

*

Фей

  • *****
  • 704
  • [+]86 / [-]3
  • skype: bel_ko_d
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #11 : 07.12.2012, 20:59:07 »
конечно же, ведь не читаем и не думаем )
в 2.5 есть поле "Примечание" в каждом пункте меню, вот туда и пишем субтекст
Поддержка приветствуется: R389709625951 Z385311708634 E421764509818

*

zaur111

Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #12 : 08.12.2012, 14:45:04 »
конечно же, ведь не читаем и не думаем )
в 2.5 есть поле "Примечание" в каждом пункте меню, вот туда и пишем субтекст
Получилось! Правда у нас note за пределы тега "a" выводится, но с этим я уже справлюсь... Спасибо большое!

*

tigra-uki

  • ****
  • 374
  • [+]10 / [-]0
  • Joom'лiстка
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #13 : 29.04.2016, 18:42:29 »
Посоветуйте, пожалуйста, если возможно, аналогичный фокус с Joomla 3.
Указанные действия, увы, не привели ни к чему :(
Слишком сконцентрированное внимание необходимо разбавлять действием.

*

zaur111

Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #14 : 29.04.2016, 18:51:11 »
А что в Joomla 3 - $item->note - не работает? Я делал, все работало вроде, давно было, точно не помню.

*

tigra-uki

  • ****
  • 374
  • [+]10 / [-]0
  • Joom'лiстка
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #15 : 29.04.2016, 20:51:50 »
А что в Joomla 3 - $item->note - не работает? Я делал, все работало вроде, давно было, точно не помню.
Вы знаете, посмотрела и пришла к выводу, что просто из моего шаблона правки игнорировались в файле default_component.php.
Если же внести указанные Вами правки в modules/mod_menu/tmpl/default_component.php то все работает!
Слишком сконцентрированное внимание необходимо разбавлять действием.

*

zaur111

Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #16 : 29.04.2016, 21:15:03 »
Значит переопределение шаблона неправильно сделали. Удалите переопределение из вашего шаблона и потом создайте заново в админке через шаблон и создания переопределений.

*

tigra-uki

  • ****
  • 374
  • [+]10 / [-]0
  • Joom'лiстка
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #17 : 29.04.2016, 21:23:43 »
Значит переопределение шаблона неправильно сделали. Удалите переопределение из вашего шаблона и потом создайте заново в админке через шаблон и создания переопределений.
Именно! Спасибо за совет!
+
Слишком сконцентрированное внимание необходимо разбавлять действием.

*

tigra-uki

  • ****
  • 374
  • [+]10 / [-]0
  • Joom'лiстка
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #18 : 31.05.2016, 20:00:52 »
Кстати, указанный способ хорош, но, не хочет работать, если пункт меню является внешней ссылкой - в этом случае subtitle  не отображается...:(
Слишком сконцентрированное внимание необходимо разбавлять действием.

*

Shustry

  • *****
  • 6426
  • [+]736 / [-]3
  • Рисую дизайны
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #19 : 31.05.2016, 20:29:59 »
Потому что для внешней ссылки нужно править файл default_url.php
Бесплатно консультирую по дизайну и вёрстке (только в icq и личку сердечно прошу не стучать). Платно делаю дизайн, вёрстку и темплейты для Joomla. Работаю только за деньги. За большие. И долго. Но качественно.
---------------------------------------------------------
xmpp:joomla@conference.jabber.ru - наша конфа!

*

tigra-uki

  • ****
  • 374
  • [+]10 / [-]0
  • Joom'лiстка
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #20 : 31.05.2016, 20:37:34 »
Потому что для внешней ссылки нужно править файл default_url.php

Внезапно просто :)
спасибо, Shustry!
Слишком сконцентрированное внимание необходимо разбавлять действием.