мысли разные мои
авторский проект

У новичков, заинтересовавшихся CMS DataLife Engine (DLE) одна из первых сложностей, которая может возникнуть при настройке системы - это основное меню и подсветка активного пункта в нем. В мануале DLE этот аспект подробно не описан, а те рекомендации, которые приведены, рассчитаны на профессионалов.

Надеюсь, этот совет вам поможет, и вам не придется перелопачивать кучу информации.

Итак, пункты меню в DLE прописываются вручную, в шаблоне сайта. Нужный нам шаблон расположен в /templates/{ИМЯ ШАБЛОНА}/modules/topmenu.tpl (актуально для версии 12.0). Прежде, чем добавить пункт меню, необходимо создать соответствующую категорию в списке категорий. После создания запоминаем ID нужной категории и переходим в раздел "Управление шаблонами" в админпанели сайта. У нас появится возможность редактирования текущего активного шаблона на нашем сайте. Переходим в папку /modules/ и выбираем файл topmenu.tpl.

Перед нами, в общем-то, простая конструкция.

<li[available=main]  class="active"[/available]><a href="/" title="Главная">Главная</a></li>

<li[available=feedback]  class="active"[/available]><a href="/index.php?do=feedback" title="Контакты">Контакты</a></li>

<li[available=rules]  class="active"[/available]><a href="/rules.html" title="Правила">Правила</a></li>

Эти три раздела присутствуют во всех трех шаблонах, имеющихся в DLE после установки. Предположим, что у нас существует категория "Новости" с псевдонимом news  и ID;2. Добавление пункта 

<li[available=news]  class="active"[/available]><a href="/news/" title="Новости">Новости</a></li>

добавляют новый раздел в меню. И этот раздел прекрасно работает, но вот только одна беда – если у нас используется подсветка активного раздела, то при переходе в новый, только что добавленный раздел, он активным не становится. Все дело в [available=...] ... class="active"[/available]. Для подсветки активного раздела такой синтаксис не подходит.

Правильная конструкция следующая:

<li[category=2] class="active"[/category]><a href="/news/" title="Новости">Новости</a></li>

А файл будет выглядеть так:

<li[available=main]  class="active"[/available]><a href="/" title="Главная">Главная</a></li>
<li[category=1] class="active"[/category]><a href="/news/" title="Новости">Новости</a></li>
<li[category=2]  class="active"[/category]><a href="/rustore/" title="Описание раздела">Название пункта меню</a></li>
<li[available=feedback]  class="active"[/available]><a href="/index.php?do=feedback" title="Контакты">Контакты</a></li>
<li[available=rules]  class="active"[/available]><a href="/rules.html" title="Правила">Правила</a></li>

Собственно, это все. После добавления такой строки при переходе по новому пункту меню он становится активным.

Надеюсь, эта информация была для вас полезной.

Добавить комментарий


Защитный код
Обновить