Хаки и Скрипты Next Generation CMS
irbees2008 irbees2008 Опубликовано - 22 - апреля Настройка плагинов
228 - 0
  • Адаптировал: irbees2008
  • Уровень сложности исполнения: это делается простым копированием и нажиманием кнопки


Описание плагина

Плагин XMenu предоставляет профессиональное решение для управления меню на вашем сайте с использованием TWIG-шаблонов, включая поддержку как категорий новостей, так и статических страниц.


Основные возможности:

  • Поддержка до 9 независимых меню
  • Гибкая система привязки категорий и статических страниц
  • Оптимизированное кеширование для максимальной производительности
  • Поддержка пользовательских шаблонов для каждого меню
  • Возможность отображения количества новостей в категориях
  • Полная интеграция со статическими страницами NG-CMS



Установка плагина

  1. Загрузка плагина

    Поместите папку плагина в директорию:

    /engine/plugins/
  2. Активация плагина

    В административной панели перейдите:

    Настройки → Плагины → XMenu → Активировать
  3. Настройка меню

    После активации перейдите:

    Настройки → XMenu → Конфигурация



Настройка плагина


Привязка элементов к меню

В разделе конфигурации вы увидите таблицы всех категорий и статических страниц сайта. Для каждого элемента можно указать, в каких меню он должен отображаться:

  • # - элемент отображается в меню
  • _ - элемент скрыт в меню

Каждый столбец соответствует номеру меню (от 1 до 9).


Дополнительные настройки

НастройкаОписаниеЗначения
Источник шаблоновОпределяет, откуда загружать TWIG-шаблоны
0
- из шаблона сайта
1
- из папки плагина
КешированиеВключает/выключает кеширование меню
1
- включено
0
- выключено
Время жизни кешаОпределяет период актуальности кеша (в секундах)По умолчанию:
3600
(1 час)
Показывать статические страницыВключает отображение статических страниц в меню
1
- да
0
- нет



Использование в шаблонах

Для вывода меню используйте TWIG-функцию callPlugin():

{{ callPlugin('xmenu.show', {
    menu_id: 1,             // Обязательный параметр (1-9)
    template: 'custom_menu', // Необязательно (по умолчанию 'xmenu')
    show_news: 1,           // Необязательно (1 - показывать кол-во новостей)
    show_static: 1,         // Необязательно (1 - показывать статические страницы)
    debug: 0                // Необязательно (1 - включить режим отладки)
}) }}

Параметры вызова:

ПараметрОбязательныйЗначение по умолчаниюОписание
menu_id
Да-Номер меню (от 1 до 9)
template
Нет
xmenu
Имя используемого шаблона
show_news
Нет
1
Показывать количество новостей (0 - нет, 1 - да)
show_static
Нет
1
Показывать статические страницы (0 - нет, 1 - да)
debug
Нет
0
Режим отладки (0 - выключен, 1 - включен)



Шаблоны меню

Плагин ищет шаблоны в следующем порядке:

  1. В шаблоне сайта:
    /templates/ВАШ_ШАБЛОН/plugins/xmenu/
  2. В папке плагина:
    /engine/plugins/xmenu/tpl/

Стандартный шаблон (xmenu.tpl)

<ul class="xmenu menu-{{ menu_id }}">
    {% for item in items %}
        <li class="{{ item.type }} {{ item.active ? 'active' : '' }}">
            <a href="{{ item.url }}" title="{{ item.name }}">
                {{ item.name }}
                {% if item.type == 'category' and show_news and item.news_count > 0 %}
                    <span class="news-count">({{ item.news_count }})</span>
                {% endif %}
            </a>
        </li>
    {% endfor %}
</ul>

<style>
    .xmenu .static { color: #4a6ea9; }
    .xmenu .category { color: #333; }
    .xmenu .active { font-weight: bold; }
    .news-count { font-size: 0.8em; color: #666; }
</style>

Доступные переменные в шаблонах

ПеременнаяТипОписание
items
arrayМассив элементов меню
items[].type
stringТип элемента (
category
или
static
)
items[].id
intID элемента
items[].name
stringНазвание элемента
items[].url
stringURL элемента (генерируется автоматически)
items[].active
boolАктивен ли текущий элемент
items[].news_count
intКоличество новостей в категории (только для type=category)
items[].alt_name
stringАльтернативное имя (только для type=static)
menu_id
intID текущего меню
show_news
boolФлаг отображения количества новостей
show_static
boolФлаг отображения статических страниц
tpl_url
stringПуть к папке с шаблонами



Примеры использования


1. Простое меню с категориями и статикой

{{ callPlugin('xmenu.show', {menu_id: 1}) }}

2. Меню только со статическими страницами

{{ callPlugin('xmenu.show', {
    menu_id: 2,
    show_news: 0,
    show_static: 1
}) }}

3. Меню с кастомным шаблоном

{{ callPlugin('xmenu.show', {
    menu_id: 3,
    template: 'custom_menu'
}) }}

4. Меню только с категориями

{{ callPlugin('xmenu.show', {
    menu_id: 4,
    show_static: 0
}) }}



Рекомендации

  • Для сложных меню создавайте собственные шаблоны с разным оформлением для категорий и статических страниц
  • Для ускорения работы включайте кеширование, особенно при большом количестве элементов
  • При разработке используйте режим отладки (
    debug: 1
    ) для выявления проблем
  • Для SEO убедитесь, что все элементы имеют ЧПУ-адреса
  • Для стилизации используйте классы
    .static
    и
    .category
    в CSS

Плагин XMenu предоставляет полный контроль над отображением меню через мощную TWIG-систему, позволяя создавать меню любой сложности с минимальными затратами ресурсов.


Скачать :Вы не можете скачивать файлы с нашего сайта ,рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Можешь почитать и вот эту статейку "Google ругается на отсутствие 404 ошибки."

Опрос

Ваше мнение

На каком движке ваш сайт?
Результаты

Последние комментарии

Теги

Anything in here will be replaced on browsers that support the canvas element

Статистика

  • Caйт cущecтвуeт: 4656 дней
  • Статических страниц: 10
  • Категорий: 28
  • Новостей: 619
  • Неопубликованных новостей: 8
  • Комментариев: 257
  • Зарегестрированных пользователей: 779
  • Онлайн всего: [19]
  • Гости: [19]
  • Сегодня нас посетили: [9] Google, Larrytitly, Яндекс, Яндекс, irbees2008, Google, dankeanke, Google, Google
  • SQL запросов: 22
  • Генерация страницы: 0.144сек
  • Потребление памяти: 9.094 Mb 
  •   Яндекс.Метрика