В 1С-Битрикс контент-менеджер может редактировать меню прямо из публичной части сайта — включив режим правки и не открывая файлы .left.menu.php или .top.menu.php вручную. Это самый быстрый способ добавить, переименовать или переставить пункты.
Что такое редактирование меню в публичной части
Меню в 1С-Битрикс хранится в служебных файлах внутри каждого раздела: .left.menu.php, .top.menu.php и т. п. Имя файла соответствует типу меню, заданному в шаблоне сайта. Редактировать эти файлы можно тремя способами:
- Через публичную часть — в режиме правки, визуально, прямо на странице;
- через Контент → Структура сайта → Файлы и папки в административном разделе;
- вручную, редактируя PHP-массив пунктов меню.
Первый способ — самый удобный для контент-менеджера: не нужно помнить путь к файлу и синтаксис массива. Битрикс сам определяет, какое меню выводится в данной области шаблона, и предлагает его на редактирование.
Как включить режим правки
Управление меню доступно только при включённом режиме правки. Порядок действий:
- Авторизуйтесь на сайте под учётной записью с правами контент-менеджера или администратора.
- В верхней административной панели нажмите кнопку
Правка. Панель переключится в режим редактирования, а на странице появятся кнопки управления компонентами и областями. - Наведите курсор на блок меню — вокруг него подсветится рамка компонента, а в углу появится всплывающая кнопка с шестерёнкой (меню действий).
В этом же режиме доступна правка включаемых областей, свойств страницы и текстового контента — не только меню.
Добавление и изменение пункта меню
Наведите курсор на область меню и нажмите кнопку действий. В выпадающем списке выберите «Изменить меню такого-то типа» (например, «Изменить левое меню»). Откроется визуальный редактор пунктов.
Для каждого пункта задаются поля:
- Название — текст ссылки, который увидит посетитель;
- Ссылка — относительный путь (
/catalog/) или абсолютный URL; - Сортировка — порядок пунктов (меньше число — выше в списке);
- Дополнительные параметры — условие показа, класс, атрибуты.
Чтобы добавить пункт, нажмите Добавить пункт меню, заполните поля и сохраните. Изменения сразу записываются в файл меню текущего раздела.
Сортировка пунктов и вложенные уровни
Порядок пунктов задаётся полем сортировки. В визуальном редакторе пункты можно перетаскивать мышью — значение сортировки пересчитается автоматически.
Вложенность (подпункты) в Битрикс реализуется не отдельным полем, а уровнем пункта: в массиве меню за уровень отвечает числовой параметр в описании пункта. Многоуровневое меню корректно отобразится только если шаблон меню (тип вывода) поддерживает вывод подпунктов.
Помните важное правило Битрикс: меню каждого раздела наследуется вниз по структуре. Если в подразделе нет собственного файла меню, выводится меню родительского раздела.
Условия показа и права доступа
Для каждого пункта можно задать условие показа — PHP-выражение, которое определяет, будет ли пункт виден. Типичные примеры:
| Задача | Условие |
|---|---|
| Показать только авторизованным | $GLOBALS['USER']->IsAuthorized() |
| Показать только администратору | $GLOBALS['USER']->IsAdmin() |
| Скрыть на время | false |
Условие вычисляется при каждом показе страницы, поэтому не размещайте в нём «тяжёлых» запросов. Права на само редактирование меню определяются уровнем доступа пользователя к разделу: без права на запись кнопка правки меню не появится.
Частые ошибки
- Правят «не то» меню. В шаблоне бывает несколько типов меню (top, left, bottom). Убедитесь, что редактируете нужную область — Битрикс подписывает тип меню в заголовке редактора.
- Ожидают, что пункт появится во всех разделах. Меню привязано к разделу. Изменение в
/about/не затронет/catalog/, если у того своё меню. - Ломается подсветка активного пункта. Она работает по совпадению URL. Если ссылка ведёт на
/aboutбез слэша, а реальный путь/about/, активность не определится — пишите пути единообразно. - Кэш не сбросился. При включённом кэшировании компонента меню изменения могут не отобразиться сразу. Сбросьте кэш или дождитесь его обновления.
- Нет кнопки правки. Причина почти всегда в правах доступа к разделу или в отключённой административной панели.
Итог
Редактирование меню через публичную часть — штатный и самый быстрый инструмент контент-менеджера в 1С-Битрикс. Включите режим правки, наведите курсор на меню, выберите «Изменить меню» и работайте в визуальном редакторе: добавляйте пункты, задавайте ссылки, сортировку, вложенность и условия показа.
Главное — помнить о привязке меню к разделу и его наследовании вниз по структуре, единообразно оформлять URL и не забывать про кэш. Тогда навигация сайта останется управляемой без прямого редактирования PHP-файлов.