Как сделать подменю в битрикс
Перейти к содержимому

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

  • автор:

Создание выпадающего меню в Bitrix

Сегодня, мы затронем тему создания выпадающего меню на Битрикс. В принципе, тема создания меню достаточно проста, но тем не менее, требует наличия знаний по работе с данной CMS.

Обзор по разработке меню, мы начнем с создания нового раздела в верхнем меню на сайте. Для этого, перейдите в публичную часть сайта и в списке панели инструментов выбираете «Создать раздел». В открывшемся окошке «Мастер создания нового раздела» заполняете поле с названием будущего раздела и переходите далее.

За тем, указываете тип меню (где именно будет отображен пункт, в верхнем или нижнем меню), а также очередность в общем меню.

И последним шагом, будет указание ключевых и описание страницы. После чего, вы нажимаете «Готово» и проверяете наличие пункта меню на главной странице сайта.

Теперь, после создания одного из разделов меню, переходим к созданию выпадающих пунктов. Для этого переходим в административную часть сайта и выбираем Контент/Файлы и папки . Здесь выбираем именно тот раздел (каталог) в котором будете создавать подпункты и жмете «Добавить новую папку».

Здесь, обязательно указываете:

  • Название раздела.
  • Отмечаете создание пункта меню
  • Указываете «Левое меню», для того, чтобы под пункт меню стал выпадающим.

После, нажимаете «Сохранить» или «Применить».

На сайте, созданные под-пункты меню будут отображены слева в родительской папке, в которой вы их создали.

Количество под-пунктов меню, будет зависеть от ваших пожеланий. Чтобы просмотреть результат, перейдите на главную страницу. При наведении на раздел Библиотеки, увидите выпадающее меню.

А также их отображение в левой части сайта, при выборе раздела.

Также рекомендуем почитать:

Категории

Хостинг сайтов

  • Блог
  • Наши новости, акции, нововведения
  • Руководства, статьи, инструкции
  • Хостинг, домены, мировые новости, обзоры ПО
  • Рейтинги, обзоры, отзывы
  • Наши новости, акции, нововведения
  • Руководства, статьи, инструкции
  • Хостинг, домены, мировые новости, обзоры ПО
  • Рейтинги, обзоры, отзывы
  • RSS

Популярное в категории

  • Новая услуга: VPS с выделенным накопителем
  • Новая функция в cPanel: установка бесплатного SSL-сертификата от Let’s encrypt
  • Авторизация через соцсети в Bitrix
  • Создание простого и выпадающего меню на WordPress
  • Cron в cPanel: запуск скрипта по расписанию
  • Основы JavaScript. Урок 1. Введение в JavaScript. Что такое JavaScript.
  • Что делать с ошибкой Strict Standards: Non-static method JLoader?
  • Что лучше хостинг или vps?
  • Где купить домен и хостинг?
  • Инструкция по установке ISPmanager (последняя версия)
  • SSL: понятие, суть, предназначение
  • Добро пожаловать в наш блог!

Как вручную добавить подпункт в меню Битрикс

image

В этой статье (заметке) речь пойдет о ручном добавлении подпунктов в меню Битрикс и позволит открыть глаза на формирование массива $aMenuLinks для тех, кто еще испытывает в этом трудности.

Основные настройки

Допустим у нас есть раздел с названием «Услуги», в этом разделе мы хотим создать два подраздела и сделать соответственно два подпункта. Для этого необходимо создать файл .тип_меню.menu.php, в нашем случае это будет файл .left.menu.php, в данном файле за формирование меню отвечает массив $aMenuLinks, вот массив для нашего примера:

$aMenuLinks = array ( Array ( «Создание сайтов» , «/services/create-sites/» , Array ( ) , Array ( ) , «» ) , Array ( «Виды услуг» , «/services/optimization/» , Array ( ) , Array ( ) , «» ) )

Добавление типов меню в административной интерфейсе и прочие стандартные моменты дублировать не имеет смысла, так как об этом подробно рассказывается в учебном курсе Битрикса.

И вот встает задача добавить в раздел «Создание сайтов» раздел «Создание Landing Page» и соответственно вывести этот подпункт у раздела родителя.

Структура массива $aMenuLinks с подпунктами

Подпункты в массиве должны идти строго по порядку после родительского пункта меню

$aMenuLinks = array ( // Родительский пункт меню Array ( «Создание сайтов» , «/services/create-sites/» , Array ( «/services/create-sites/» ) , Array ( «FROM_IBLOCK» => 1 , // Пункт является родительским «IS_PARENT» => 1 , // Уровень вложенности 1 «DEPTH_LEVEL» => 1 ) , «» ) , // Дочерний подпункт Array ( «Создание Landing Page» , «/services/create-sites/landing-page/» , Array ( «/services/create-sites/landing-page/» ) , Array ( «FROM_IBLOCK» => 1 , // Пункт не является родительским «IS_PARENT» => 0 , // Уровень вложенности 2 «DEPTH_LEVEL» => 2 ) , «» ) , Array ( «Виды услуг» , «/services/optimization/» , Array ( ) , Array ( ) , «» ) )

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

Не забывайте выставить параметр уровня вложенности в настройках компонента.

Проблема с меню и подменю на сайтах Битрикс

Screenshot_1.png

В иерархии меню Битрикс есть такой неприятный (скорее для редакторов) баг. Как сделать вот такое вот меню?

Все правильно, в корне создаем основной файл меню, а внутри разделов уже меню подразделов. И компонент меню вызываем как-то так

Screenshot_2.png

Все бы ничего, но зайдя в какой-то раздел и пытаясь создать меню внутри него, нас ждет разочарование — такого действия нет (нельзя создать подменю).

Screenshot_3.png

Все потому, что мы явно не вызываем меню для второго типа меню (в моем случае это left_inner). И панель админа его не отслеживает и не выводит кнопку создания.

Битрикс почему-то настойчиво не хочет это исправлять, причем очень много лет не хочет, отправляет в тикетах на данное решение .
По факту же все решается гораздо проще, нам надо внутри нашего шаблона меню сделать вот такой вызов:

CanDoOperation('fileman_edit_menu_elements')) < $APPLICATION->IncludeComponent('bitrix:menu', 'pr_empty', Array('ROOT_MENU_TYPE' => $arParams['CHILD_MENU_TYPE'])); > ?>

То есть, если есть подменю и есть права на редактирование меню (эта проверка скорее для оптимизации вызова), то вставь мне компонент для подтипа. Обратите внимание, я вызываю его с пустым шаблоном — его тоже надо будет создать (именно пустой шаблон меню).

Работа с подменю в битриксе

Добрый день! Я начинающий разработчик битрикс, столкнулся с такой проблемой. Заказчик поставил задачу чтобы меню можно было редактировать в админке или прямо на сайте под администратором. Ситуация такая есть верхнее меню двухуровневое и левое меню двухуровневое, так вот при редактировании пунктов меню в визуальном режиме, менеджер видит только пункты меню первого уровня. Как сделать чтобы редактирование было возможно всех подменюшек? Меню выглядит так: alt textА когда редактируешь его через админку или на панели управления, там только два последних пункта выводятся: alt textГде скрываются остальные пункты меню? Хотя это один компонент, и некоторые пункты меню содержат подменю еще, но их тоже нигде редактировать нельзя.

Отслеживать
задан 21 июн 2014 в 7:06
IntegralAL IntegralAL
2,699 5 5 золотых знаков 60 60 серебряных знаков 105 105 бронзовых знаков

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

нужно заходить в каждый раздел и оттуда редактировать.. но есть готовое решение. http://marketplace.1c-bitrix.ru/solutions/intervolga.menu/

Отслеживать
ответ дан 21 июн 2014 в 19:35
402 5 5 серебряных знаков 17 17 бронзовых знаков

    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.11.15.1019

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *