Вход • Регистрация

Как подключить выпадающее меню?

  • 03 октября 2010 г.
  • Заметил вот такое меню выпадающее на сайте http://www.mining-enc.ru/, вопрос, как его реализовать шаблонным тегом?
    • 04 октября 2010 г.
    • Там скорее всего горизонтальное меню сделано обычным образом, то есть не через метод show_hrefmenu()
      Но можно такое же написать и через этот метод, чтобы выпадающие элементы могли добавляться динамически
    • 11 октября 2010 г.
    • Да там просто двойная вложенность списков <ul><li>
      Обратите внимание, сделано так:

      Код
      <ul id="nav">

      <li class="first"></li>

      <li><a href>PUNKT MENU</a>
      <ul>
      <li><a href>podpunkt</a></li>
      <li><a href>podpunkt</a></li>
      </ul>
      </li>

      <li><a href>PUNKT MENU</a>
      <ul>
      <li><a href>podpunkt</a></li>
      <li><a href>podpunkt</a></li>
      </ul>
      </li>

      <li><a href>PUNKT MENU</a>
      </li>

      </ul>


      Для вывода такого меню надо делать такой шаблонный тег:

      Код
      <ul id="nav">
      <li class="first"></li>

      <insert name="show_menu"
      tag_start_1="[li]"
      tag_end_1="[ul]"
      separator_1="[/ul][/li]"

      tag_start_2="[li]"
      tag_end_2="[/li]"

      separator_2=""

      show_all_level="1"
      count_level="2">
      </ul></li>
      </ul>
  • 28 октября 2010 г. , редакция: 28 октября 2010 г.
  • у меня меню такое:

    Код
    <li class="li1 no_bg">
    <a href="#"><span>пункт1</span></a>
    <div>
    <ul>
    <li><a href="#">пункт 1</a></li>
    <li><a href="#">пункт 2</a></li>
    <li><a href="#">пункт 3</a></li>
    <li><a href="#">пункт 4</a></li>
    </ul>
    </div>
    </li>
    <li class="li2">
    <a href="#"><span>наша продукция</span></a>
    <div>

    <ul>
    <li><a href="#">пункт 1</a></li>
    <li><a href="#">пункт 2</a></li>
    <li><a href="#">пункт 3</a></li>
    <li><a href="#">пункт 4</a></li>
    </ul>

    </div>
    </li>
    и т.д.


    тег сделал, получилось так:

    Код
    <insert name="show_menu"
    tag_start_1="[li]"
    tag_end_1="[div][ul]"
    separator_1="[/ul][/div][/li]"

    tag_start_2="[li]"
    tag_end_2="[/li]"

    separator_2=""
    show_all_level="1"
    count_level="2">


    проблема в том, что <span> я смог вставить только в коде /includes/menu.php

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

    и еще момент такой - у каждого пункта меню 1 уровня <class=""> свой. тоже ума не приложу, как сделать можно.

    • 29 октября 2010 г.
    • Все можно сделать стилями.
      Можно сделать так:
      Код

      <style>
      .menu a {
      стили
      }
      </style>
      <div class="menu">
      <a href=#>menu1</a>
      <a href=#>menu2</a>
      <a href=#>menu3</a>
      </div>


      А если надо для каждого отдельного пункта свой стиль, то так:
      Код

      <style>
      .menu1 a {
      стили
      }
      .menu2 a {
      стили
      }
      </style>
      <div class="menu1">
      <a href=#>menu1</a>
      </div>
      <div class="menu2">
      <a href=#>menu2</a>
      </div>

      И в теге пишете:
      Код
      <insert name="show_menu"
      tag_start_1="[li][div style=menuIncrement]"
      ...


      Или даже можно стили списков определить
      Код

      [li class=menuIncrement]


      Если используете Increment, то при выводе слово Increment будет заменяться на арифметическую прогрессию: 1 2 3 4...
      Т.е. будет выводить для первого меню
      li class=menu1
      для второго
      li class=menu2
      и т.д.

      А вообще, файл menu.php для того и выведен в отдельный файл, который автообновление не трогает. Специально для пользовательских правок.
  • 02 июня 2012 г.
  • А есть возможность реализации многомерной вложенности? Хотябы тройной.
    Код

    <ul>
    <li><a href="/">Ссылка</a></li>
    <li><a href="/">Ссылка</a></li>
    <li>
    <a href="/">Ссылка</a>
    <ul>
    <li><a href="/">Ссылка</a></li>
    <li><a href="/">Ссылка</a></li>
    <li>
    <a href="/">Ссылка</a>
    <ul>
    <li><a href="/">Ссылка</a></li>
    <li><a href="/">Ссылка</a></li>
    <li>
    <a href="/">Ссылка</a>
    </li>
    </ul>
    </li>
    </ul>
    </li>
    </ul>

Новости

  • 18 июня
  • В сборке большое обновление demo-шаблона, дополнительная защита от спама, улучшение YML-импорта и еще много важного и интересного.
  • 24 апреля
  • В новой сборке совершили революцию в структурировании кастомизированной информации в шаблонах, добавили авторегистрацию пользователей, усовершенствовали защиту от спама, актуализировали накопительную скидку, а также улучшили производительность и стабильность работы системы.
  • 12 января
  • После выхода сборки 7.1 мы выпустили уже три патча, в каждом из которых улучшаем административную часть сайта. Сборка DIAFAN.CMS 7.1.3 уже доступна к установке. 

Форум