Новости Joomla

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

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Всем привет))
Кто-нибудь пилил j3.0?

Допиливаю mod_menu … и уперся.
Что-бы работало dropdown-menu, нужно получить вот такую конструкцию:

Код: xml
<ul class=”nav”>
  <li class="item-122 dropdown">
    <a class="dropdown-toggle" data-toggle="dropdown" data-target="#" href="/page-x">
      Пункт меню<b class="caret"></b>
    </a>
    <ul class="dropdown-menu">
      <li class="item-124">
        <a href="/page-y/mtest1">Длинный заголовок подпункта</a>
      </li>
    </ul>
  </li>
  ...

Тогда Js будет отрабатывать класс .open
А уперся я вот где.

Когда добавляешь  data-target="#"  - исчезает <ul class="dropdown-menu">
Если тупо задаешь href=”#” – тоже самое
Если не добавлять, то не появляется класс .open

Пока поставил подпорку через CSS , но решение не очень красивое, временное. Потому что выпадающее меню не исчезает при потере фокуса, а висит, пока не будет выбран какой-нибудь пункт меню

Гуглил, искал, сутки сижу, уже мозги плавятся
Если кто-то разбирался с меню – подскажите, пожалуйста, в каком направлении искать решение

Спасибо))
*

NightGuard

  • Живу я здесь
  • 2927
  • 378 / 7
  • вжжж-вжжж
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #1 : 16.10.2012, 11:29:29 »
Можешь файл шаблона меню куда-нить выложить, чтоб скачать можно было?
Идеология сверхпотребления более опасна для человечества, чем идеология гитлеровского тоталитаризма
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #2 : 16.10.2012, 16:52:08 »
дальше в этом направлении не копал пока ... Приведу в порядок - обязательно выложу

А на данном этапе упростил все до минимума. Вставил маленькую подпорку в CSS и заменил несколько строк в шаблоне меню.

в default.php
Код: php
исходный код

47. if ($item->parent) {
      $class .= ' parent';
    }    
// The next item is deeper.
71. if ($item->deeper) {
      echo '<ul class="nav-child unstyled small">';
    }
    
заменил на

    if ($item->parent) {
      $class .= ' dropdown';
    }    
    // The next item is deeper.
    if ($item->deeper) {
      echo '<ul class="dropdown-menu">';
    }
    
в default_component.php
Код: php
добавил
if ($item->parent){
  $caret = '<b class="caret"></b>';
}
и код
26. <a <?php echo $class; ?>href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?></a>

заменил на
    <a <?php echo $class; ?> href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?><?php echo $caret; ?></a>
в default_separator.php
Код: php
добавил
$caret = '<b class="caret"></b>';

и заменил
22. <span class="separator"><?php echo $title; ?><?php echo $linktype; ?></span>
на
<a href="#" <?php echo $title; ?>><?php echo $linktype; ?><?php echo $caret; ?></a>

в CSS прописал
Код: css
.navbar-inverse .nav  li.dropdown:hover > ul.dropdown-menu{
  display:block!important;
}
.caret{
  display:none;
}
.dropdown .caret {
  display:inline-block;
}

Все работает. Посмотреть можно здесь http://wantweb.ru (это полигон для экспериментов, на тексты не обращать внимания)
« Последнее редактирование: 16.10.2012, 16:57:47 от fbr »
*

toluy

  • Осваиваюсь на форуме
  • 17
  • 1 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #3 : 15.12.2012, 19:51:29 »
2fbr, ты дальше ковырял меню, или забил? сам сейчас копаюсь с ней
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #4 : 15.12.2012, 20:50:47 »
ну так, немножко еще поковырял ... :)

Вроде все работает и по клику и по hover
Можно посмотреть и потестить файлы прикрепил

Буду всем благодарен за замечания и рекомендации))

[вложение удалено Администратором]
*

toluy

  • Осваиваюсь на форуме
  • 17
  • 1 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #5 : 16.12.2012, 00:09:17 »
Буду всем благодарен за замечания и рекомендации))
у тебя отлично получилось.
тока вот есть ньюанс у меня. как к своему шаблону mod_menu прилепить файл name_separator.php (тот который default_separator.php)?
вот наотрез не хочет подключаться.
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #6 : 16.12.2012, 21:48:46 »
В файле dropdown-menu.php попробуйте после case 'separator':   вставить

require JModuleHelper::getLayoutPath('mod_menu', 'name_'.$item->type);
break;

сам не проверял ..
*

voland

  • Легенда
  • 11030
  • 588 / 112
  • Эта строка съедает место на вашем мониторе
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #7 : 16.12.2012, 21:54:34 »
В файле dropdown-menu.php попробуйте после case 'separator':   вставить

require JModuleHelper::getLayoutPath('mod_menu', 'name_'.$item->type);
break;

сам не проверял ..
Эх.. версия уже 3, а костыли что? Всё те же?
*

fbr

  • Завсегдатай
  • 1625
  • 189 / 7
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #8 : 16.12.2012, 22:09:26 »
voland
я, увы, не спец в php... Все больше интуитивно (когда-то писал на VBA)

Учусь потихоньку))
*

toluy

  • Осваиваюсь на форуме
  • 17
  • 1 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #9 : 17.12.2012, 00:21:55 »
Эх.. версия уже 3, а костыли что? Всё те же?
ну по умолчанию файлы newmenu_url.php, newmenu_separator.php и другие в папке /templates/your_template/html/mod_menu/ сами не подключаются.. уже проверил. работает только newmenu.php, и в админке модулю меню можно назначить этот файл как шаблон.

Если знаешь другой способ, подскажи, пожалуйста.

fbr - спс за вариант - опробую.
*

toluy

  • Осваиваюсь на форуме
  • 17
  • 1 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #10 : 18.12.2012, 14:39:00 »
В файле dropdown-menu.php попробуйте после case 'separator':   вставить

require JModuleHelper::getLayoutPath('mod_menu', 'name_'.$item->type);
break;

сам не проверял ..

Да тема работает))) чёт я вначале даже не обратил внимание на код подключения доп файлов
*

avex

  • Захожу иногда
  • 184
  • 0 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #11 : 29.03.2013, 13:38:30 »
fbr, Вы можете пошагово пояснить, что делать с прикрепленным файлом?
Насколько я понимаю, нужно в своем шаблоне, в папке HTML создать папку mod_menu, куда скинуть Ваши два файла - default_separator.php и default-dropdown.php.
В теме Вы говорите, что нужно править файл default.php и default_component.php - откуда они берутся?

очень хочется решить выпадающее меню стандартными средствами Joomla, а не из JED - все просмотренные там либо не очень красивы, либо не для трёшки, либо не адаптивные.
*

avex

  • Захожу иногда
  • 184
  • 0 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #12 : 31.03.2013, 09:38:39 »
В последней версии Joomla - 3.1 beta2 вопрос с выпадающим меню решили: оно у них работает на стандартном модуле.
Но взамен у них появился косяк (по крайней мере, у меня он есть) - там, где есть выпадающее меню, родительские пункты не кликабельны.
Та же проблема и в админке сайта - например, чтобы попасть в менеджер меню, нужно нажать на "Создать меню", и, попав на страничку создания, нажать "Отменить".
Надеюсь, в следующих версиях решат эту проблему.
*

KKAAZZOO

  • Живу я здесь
  • 2288
  • 118 / 9
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #13 : 31.03.2013, 11:50:11 »
Та же проблема и в админке сайта - например, чтобы попасть в менеджер меню, нужно нажать на "Создать меню", и, попав на страничку создания, нажать "Отменить".
Надеюсь, в следующих версиях решат эту проблему.

Не подтверждаю, при щелчке на пункте меню "Менеджер меню" осуществляется переход в менеджер.  Joomla - 3.1 beta2.
*

avex

  • Захожу иногда
  • 184
  • 0 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #14 : 10.04.2013, 16:43:40 »
В Joomla 3 beta 3 по-прежнему стандартно не удается создать выпадающее меню.

Выкладываю последовательность действий.

1. Создаю пункт меню и вложенный к нему.
2. Во фронте пункт red не активен, не выпадает и вложенный уровень.
3. В бэке выключаю вложенный уровень.
4. Перезагружаю фронт.
5. Жму на red - пункт становится активным.
6. В бэке снова включаю вложенный пункт.
7. Во фронте при перезагрузке появляется треугольник, нормально всплывает вложенный пункт.
8. При этом сам пункт red как ссылка не работает - только der.
9. Тут же нажимаю на пункт home, и все возвращается в первоначальное положение.





[вложение удалено Администратором]
*

avex

  • Захожу иногда
  • 184
  • 0 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #15 : 10.04.2013, 16:44:18 »
Интересно, только у меня так получается?
Если да, то странно, что разработчики до сих пор не вшили решение в Joomla.

[вложение удалено Администратором]
*

Mitai

  • Новичок
  • 4
  • 0 / 0
Re: Вопрос по Joomla 3.0. Разбираюсь с mod_menu
« Ответ #16 : 23.11.2015, 01:45:04 »
дальше в этом направлении не копал пока ... Приведу в порядок - обязательно выложу

А на данном этапе упростил все до минимума. Вставил маленькую подпорку в CSS и заменил несколько строк в шаблоне меню.

в default.php
Код: php
исходный код

47. if ($item->parent) {
      $class .= ' parent';
    }   
// The next item is deeper.
71. if ($item->deeper) {
      echo '<ul class="nav-child unstyled small">';
    }
   
заменил на

    if ($item->parent) {
      $class .= ' dropdown';
    }   
    // The next item is deeper.
    if ($item->deeper) {
      echo '<ul class="dropdown-menu">';
    }
   
в default_component.php
Код: php
добавил
if ($item->parent){
  $caret = '<b class="caret"></b>';
}
и код
26. <a <?php echo $class; ?>href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?></a>

заменил на
    <a <?php echo $class; ?> href="<?php echo $item->flink; ?>" <?php echo $title; ?>><?php echo $linktype; ?><?php echo $caret; ?></a>
в default_separator.php
Код: php
добавил
$caret = '<b class="caret"></b>';

и заменил
22. <span class="separator"><?php echo $title; ?><?php echo $linktype; ?></span>
на
<a href="#" <?php echo $title; ?>><?php echo $linktype; ?><?php echo $caret; ?></a>

в CSS прописал
Код: css
.navbar-inverse .nav  li.dropdown:hover > ul.dropdown-menu{
  display:block!important;
}
.caret{
  display:none;
}
.dropdown .caret {
  display:inline-block;
}

Все работает. Посмотреть можно здесь http://wantweb.ru (это полигон для экспериментов, на тексты не обращать внимания)
можешь разжевать для чайника конкретней где что править? например в сss где именно найти этот файл? или добавил строку куда в начале в середине или там пофигу куда?
попытался сделать как было описано выпадающего меню так и не появилось(( зато появились стрелочки вниз у некоторых из пунктов корневого меню (Joomla 3.4.5 шаблон IT ZEN )
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Шаблоны Joomlart, Gavick, Yootheme, RocketTheme для Joomla: легально и с обновлениями, no warez

Автор _ib_

Ответов: 168
Просмотров: 198911
Последний ответ 15.04.2023, 18:26:50
от AS1969
Вопрос по настройке Helix3

Автор AleksS

Ответов: 644
Просмотров: 94286
Последний ответ 16.03.2023, 21:36:56
от SolopoV
Различные условия в шаблонах Joomla 3.0 и 2.5

Автор Fedor Vlasenko

Ответов: 132
Просмотров: 24343
Последний ответ 24.01.2023, 17:46:38
от goga_pgasovav
Где в Joomla 3.4.3 шаблон материала? Шаблон Yootheme Organic

Автор annushka

Ответов: 13
Просмотров: 4813
Последний ответ 13.09.2022, 11:14:56
от tuztref
Helix ultimate 2 вопрос про меню и хедар

Автор Serganius

Ответов: 3
Просмотров: 730
Последний ответ 21.12.2021, 23:02:51
от Alex_gs