Advanced Sidebar Menu — виджет зависимого бокового меню для wordpress
Давайте рассмотрим решение одной тривиальной задачи с wordpress меню которая время от времени встречается разработчикам. Бывает, что на сайтах нужно выводить сразу два меню, которые при этом между собой взаимосвязаны: одно верхнее горизонтальное 1-го уровня, а второе в сайдбаре 2-го уровня. Причем в боковом отображаются только те подпункты, для которых выбран соответствующий родительский элемент в главном меню. Например, если у вас в шапке сайта есть перечень стран, то выбрав, допустим, Италию, в сайдбаре получите только лишь список итальянских городов.
Теоретически, реализовать такую фишку можно с помощью функции wp_nav_menu и какого-то хитрого PHP кода, но я предлагаю воспользоваться готовым решением — виджетом меню для wordpress под названием Advanced Sidebar Menu. Это максимально просто и не нужно делать никакие правки шаблона.
Скачать плагин можно отсюда или установить через админку. Основная функция — создание и вывод динамического бокового меню с учетом связи «родитель / наследник» для страниц и категорий сайта.
Никаких дополнительных настроек после установки делать не нужно, в разделе «Внешний вид» — «Виджеты» просто появится 2 новых элемента: Advanced Sidebar Pages Menu и Advanced Sidebar Categories Menu. Настройки данных виджетов меню для wordpress плюс-минус похожие:
Здесь:
- Title — заголовок виджета.
- Include Parent Page — добавлять ли родительский элемент в меню.
- Include Parent Even With No Children — включать ли страницы без подстраниц.
- Order By — варианты сортировки (порядковый номер, заголовок, дата).
- Use this Plugin’s Styling — использование стилей оформления от плагина.
- Pages to Exclude (ids) — исключаемые страницы.
- Always Display Child Pages — всегда выводить подстраницы.
- Levels to Display — количество уровней меню для отображения.
Как видите на скриншоте выше, для категорий все, в принципе, аналогично, но без сортировки и уровней. Плюс добавляется опция отображения элемента на странице с полным текстом записи (Display Categories on Single Posts).
Итого, в большинстве случаев вам просто нужно добавить виджет меню для wordpress в сайдбар и он сразу начнет работать. Конечно, при этом на сайте должна существовать соответствующая иерархия с подстраницами. Если честно, не совсем понятно как настроить зависимое меню для сложных проектов с родительской страницей, начиная со 2-го уровня. В описании модуля сказано, что нужно назначить родительскую страницу/категорию, но в настройках ничего похожего я не увидел. С другой стороны подобные ситуации встречаются крайне редко, как правило, зачастую у вас всего 2 меню (боковое и главное), поэтому виджет Advanced Sidebar Menu полностью подходит.
Напоследок следует заметить, что есть в модуле Pro версия с более широкими настройками (опции оформления, стиль аккордеона для меню и т.п.). Разработчикам советую заглянуть на страницу Developer Docs где собрана информация о специальных фильтрах/функциях для более сложных вариантов использования плагина.
Если у вас остались какие-то вопросы по боковому меню в wordpress или знаете другие подходящие виджет меню для решения этой задачи, пишите в комментариях.
комментариев 7 к статье “Advanced Sidebar Menu — виджет зависимого бокового меню для wordpress”
Блог Wordpress Inside поможет вам научиться работать в вордпресс, закрепить и расширить имеющиеся знания. Плагины и шаблоны, разные хаки и функции wp, оптимизация и безопасность системы – все это и намного больше вы сможете найти на страницах нашего проекта!
Если хотите быстро и оперативно получать последние новости и статьи, то рекомендуем подписаться на обновления блога:
- Вкладки в Woocommerce товарах — как убрать, добавить, изменить (сниппеты + плагин)
- Вывод Woocommerce товаров на странице с Elementor с помощью плагина
- Проблема с адаптивными изображениями в Gutenberg редакторе WordPress
- Хаки для страницы категории в WooCommerce
- Топ-5 плагинов для обеспечения безопасности WordPress сайтов
- Friend Hosting — создание WP сайта в один клик, обзор панели управления и плюсов хостера
- Размеры изображений в WordPress — как изменить, добавить свои и удалить лишние
- WooCommerce (44)
- Безопасность (12)
- Видео (6)
- Виджеты (28)
- Возможности (141)
- Вопрос-ответ (6)
- Начинающим (52)
- Новости (46)
- Оптимизация (23)
- Плагины (244)
- Сервисы (85)
- Хаки и секреты (87)
- Шаблоны (44)

- Дизайн Мания - о веб-дизайне и не только.
- Tod's Blog - все про заработок онлайн.
- Вебдванольные заметки - обзоры веб-сервисов.
- Топ-3 видеокарты среднего класса от AMD: зачем платить больше?
- Доработка фильтра для повышения конферсии
- Зачем нужен домен
- Переваги застосування технології розумний будинок
- Дизайн сайта
- DLE (DataLife Engine) — движок для сателлитов
- Играть бесплатно в игровые автоматы без регистрации
- Продвижение сайта через социальные сети
подскажите плиз как создать боковое меню на подобии того что на этом (seowords.org) сайте? Какой плагин использовать?
Александр, там походу обычное меню, созданное в админке и выводимое через виджет «Произвольное меню» или функцию в шаблоне.
Александр, как вам уже сказали, там используется виджет вывода рубрик на основе стиля шаблона. В принципе вы можете либо позаимствовать эти элементы и добавить их в style.css своей темы, либо можно установить плагин (из статьи выше) и изменить один из шаблонов плагина на требуемый вами.
Почему-то боковое меню выводится снизу. как это можно исправить?
Елизавета, подправить, скорее всего, можно стилями, но есть и другие нюансы. На странице описания модуля в самом низу есть парочка попоулярных вопросов/ответов по работе с модулем. Вдруг там что-то полезное есть + вкладка Support содержит что-то типа форума поддержки — я бы туда тоже заглянул. Конкретно сложно ответить по вашему вопросу, тут нужно разбираться.
подскажите, как мне настроить меню на своем блоге тут Advanced Sidebar Menu
рекомендовали вас
Василий, а что там настраивать? устанавливаете плагин, потом в разделе «Внешний вид» — «Виджеты» добавляете виджеты Advanced Sidebar Pages Menu (для страниц) или Advanced Sidebar Categories Menu (для рубрик) + задаете нужные вам параметры.