Новости Joomla

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

St@lker

  • Захожу иногда
  • 80
  • 0 / 0
Всем привет! Возникла необходимость сделать меню с подписями под ними. Что-то вида:

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

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

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

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

Спасибо!
*

Fedor Vlasenko

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

NightGuard

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

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

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

Fedor Vlasenko

  • Живу я здесь
  • 3845
  • 733 / 7
  • https://fedor-vlasenko.web.app
Два пробела для поисковиков. Чтоб карту сайта и подобные которые с меню работают не переделывать ^-^
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Народ, вы дампы меню смотрели хоть когда-нибудь в жизни? Я над вами угораю!
Есть поле "Примечание", пишите в него, что вам нужно.
Код
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" как вам хочется.
*

NightGuard

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

St@lker

  • Захожу иногда
  • 80
  • 0 / 0
Фей, а код есть что бы использовать note?
*

saharin88

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

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
именно такое имя и создаете default_component.php и в нем делаете чего хотите
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Фей, а код есть что бы использовать 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;
*

zaur111

  • Захожу иногда
  • 233
  • 6 / 0
  • Заур Магомедов
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #10 : 07.12.2012, 18: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;
А дальше то что делать, как в админке пункты создать? Т.е. создаю пункт -> название пункта + два пробела субтекст? Что то не получается...
*

Фей

  • Давно я тут
  • 743
  • 86 / 3
  • Истина в вине!
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #11 : 07.12.2012, 18:59:07 »
конечно же, ведь не читаем и не думаем )
в 2.5 есть поле "Примечание" в каждом пункте меню, вот туда и пишем субтекст
*

zaur111

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

tigra-uki

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

zaur111

  • Захожу иногда
  • 233
  • 6 / 0
  • Заур Магомедов
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #14 : 29.04.2016, 16:51:11 »
А что в Joomla 3 - $item->note - не работает? Я делал, все работало вроде, давно было, точно не помню.
*

tigra-uki

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

zaur111

  • Захожу иногда
  • 233
  • 6 / 0
  • Заур Магомедов
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #16 : 29.04.2016, 19:15:03 »
Значит переопределение шаблона неправильно сделали. Удалите переопределение из вашего шаблона и потом создайте заново в админке через шаблон и создания переопределений.
*

tigra-uki

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

tigra-uki

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

Shustry

  • Moderator
  • 6434
  • 745 / 3
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #19 : 31.05.2016, 18:29:59 »
Потому что для внешней ссылки нужно править файл default_url.php
*

tigra-uki

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

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

xilog

  • Новичок
  • 5
  • 0 / 0
Re: mod_menu и подписи к пунктам меню (subtitles)
« Ответ #21 : 29.10.2017, 16:24:00 »
 всем привет
срочно нужна помощь,всё делаю по инструкции ничего не получилось версия Joomla 3.6 templates\jsn_metro2_pro\html\mod_menu там файлы default.php  default_component.php  default_heading.php  default_separator.php  default_url.php  pills.php куда входит и что менять?

вот пример файла default_url.php

copyright[/member]   Copyright (C) 2005 - 2016 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

// Note. It is important to remove spaces between elements.
$class = $item->anchor_css ? 'class="' . $item->anchor_css . '" ' : '';
$title = $item->anchor_title ? 'title="' . $item->anchor_title . '" ' : '';
$rel   = $item->anchor_rel ? 'rel="' . $item->anchor_rel . '" ' : '';

if ($item->menu_image)
{
   $item->params->get('menu_text', 1)?
   $linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' :
   $linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" />';
}
else
{
   $linktype = $item->title;
}

$flink = $item->flink;
$flink = JFilterOutput::ampReplace(htmlspecialchars($flink));

$link_icon = $item->params->get('sunfw-link-icon', '');

$link_description = $item->params->get('sunfw-link-description', '');

$description = '';
if ($link_description != '')
{
   $description = '<span class="description">'.$link_description.'</span>';
}

$icon = '';
if ($link_icon != '')
{
   $icon = '<i class="' . $link_icon . '"></i>';
}

switch ($item->browserNav) :
   default:
   case 0:
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" <?php echo $title . $rel; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
   case 1:
      // _blank
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" target="_blank" <?php echo $title . $rel; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
   case 2:
      // Use JavaScript "window.open"
      $options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,' . $params->get('window_open');
         ?><a <?php echo $class; ?>href="<?php echo $flink; ?>" onclick="window.open(this.href,'targetWindow','<?php echo $options;?>');return false;" <?php echo $title; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
endswitch;]<?php
/**
 * @package     Joomla.Site
 * @subpackage  mod_menu
 *
 *
@copyright   Copyright (C) 2005 - 2016 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

// Note. It is important to remove spaces between elements.
$class = $item->anchor_css ? 'class="' . $item->anchor_css . '" ' : '';
$title = $item->anchor_title ? 'title="' . $item->anchor_title . '" ' : '';
$rel   = $item->anchor_rel ? 'rel="' . $item->anchor_rel . '" ' : '';

if ($item->menu_image)
{
   $item->params->get('menu_text', 1)?
   $linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" /><span class="image-title">' . $item->title . '</span> ' :
   $linktype = '<img src="' . $item->menu_image . '" alt="' . $item->title . '" />';
}
else
{
   $linktype = $item->title;
}

$flink = $item->flink;
$flink = JFilterOutput::ampReplace(htmlspecialchars($flink));

$link_icon = $item->params->get('sunfw-link-icon', '');

$link_description = $item->params->get('sunfw-link-description', '');

$description = '';
if ($link_description != '')
{
   $description = '<span class="description">'.$link_description.'</span>';
}

$icon = '';
if ($link_icon != '')
{
   $icon = '<i class="' . $link_icon . '"></i>';
}

switch ($item->browserNav) :
   default:
   case 0:
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" <?php echo $title . $rel; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
   case 1:
      // _blank
?><a <?php echo $class; ?>href="<?php echo $flink; ?>" target="_blank" <?php echo $title . $rel; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
   case 2:
      // Use JavaScript "window.open"
      $options = 'toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=yes,' . $params->get('window_open');
         ?><a <?php echo $class; ?>href="<?php echo $flink; ?>" onclick="window.open(this.href,'targetWindow','<?php echo $options;?>');return false;" <?php echo $title; ?>><?php echo $icon.$linktype.$description; ?></a><?php
      break;
endswitch;

   

благодарю за ответ

Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Назначение макета, посредством ссылки в меню

Автор xxxLOGIATxxx

Ответов: 20
Просмотров: 4855
Последний ответ 04.02.2022, 14:44:14
от hoi
Съезжает меню при наведении

Автор yyyuuu

Ответов: 4
Просмотров: 2056
Последний ответ 08.12.2020, 11:12:32
от AlexB
Проблемы в горизонтальном меню Joomla 2.5

Автор Димьяна

Ответов: 1
Просмотров: 2429
Последний ответ 27.11.2018, 14:58:30
от Ragivort
Перенос строки в название пункта меню Joomla

Автор skitskis

Ответов: 33
Просмотров: 16027
Последний ответ 29.10.2017, 10:36:30
от xilog
Как добавить класс "active" псевдониму пункта меню?

Автор Uman

Ответов: 10
Просмотров: 12303
Последний ответ 13.08.2017, 10:34:42
от midav