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

Как сделать боковое меню в wordpress

  • автор:

Как сделать боковое меню WordPress в виде раскрывающегося списка?

Пример страницы:
https://cpkro.kirovedu.ru/?page_id=244
Ранее это был разворачивающийся список . Как вернуть?

  • Вопрос задан более года назад
  • 50 просмотров

Комментировать

Решения вопроса 0

Ответы на вопрос 0

Ваш ответ на вопрос

Войдите, чтобы написать ответ

навигация-пользователя

  • Навигация пользователя

Как зафиксировать aside при скроллинге?

  • 2 подписчика
  • 05 июл. 2023
  • 265 просмотров

1с-битрикс

  • 1С-Битрикс
  • +1 ещё

Как отредактировать, подменю на Bitrix?

  • 1 подписчик
  • 21 июн. 2023
  • 60 просмотров

Редактирование пунктов меню администриративной панели WordPress

Функция «add_menu_page» добавляе пункт верхнего уровня в панель администрирования WordPress. В процессе создания пункта меню к нему прикрепляетс ястраница, которая отвечает за этот пункт.

Функция «add_menu_page» проверяет права доступа пользователя, чтобы отобразить пункт меню. Если у пользователя нет уровня доступа, то пункт меню не будет показан

У функции есть несколько аргументов:

add_menu_page( $page_title, $menu_title, $capability, $menu_slug, $function, $icon_url, $position );
Название Тип данных Описание
$page_title строка Текст, который будет использован в теге на странице, которая открывается при нажатии на пункт меню. Обязательный параметр.
$menu_title строка Название пункта бокового меню. Обязательный параметр
$capability строка Уровень доступа пользователя (права), необходимые для просмотра пункта.
$menu_slug строка Уникальный ярлык (slug), по которому идёт обращение к пункт. Обязательный параметр. Указывается название PHP файла относительно каталога плагинов, который отвечает за вывод страницы меню. Либо можно указать любую ссылку, куда будет вести пункт.
$function строка Название функции, которая выводит содержание страницы пункта меню. Если пустое значение, то будет только подключаться PHP файл для вывода из параметра «$menu_slug». По умолчанию: нет
$icon_url строка Адрес иконки для пункта меню относительно папки с плагинов. Размеры иконки должны быть 20х20 пикселей или меньше. Можно указывать изображение в base64: «data:image/png;base64. » — в этом случае, иконка фоном контейнера. Можно указывать название иконки из коллекции «dashicons», которая встроена в WordPress. По умолчанию: »
$position число Позиция в меню. Чем больше цифра, тем ниже располагается пункт меню. При совпадении чисел с уже существующими пунктами произойдёт перезапись (пункт будет заменён), поэтому не стоит использовать целые числа. Лучше использовать цифры с сотыми долями, чтобы вероятность совпадения была минимальной. Такие числа передавайте как строку.

Если число не указано, то пункт меню будет добавлен в конец списка. Список позиций системных пунктов:

Рассмотрим пример использования функции. Создадим пункт меню, за отображение страницы которого будет отвечать функция «show_page» :

); function show_page() < ?> 
Тело страницы
?>

Можно вынести код в файл:
А внутри файла «admin.php» будет:

 
Тело страницы

Добавление подпункта бокового меню

Функция «add_submenu_page» добавляет подпункт в уже существующий пункт меню. То есть дочернюю страницу (подраздел). Эта функция так же проверяет права пользователя, скрывая пункт, если прав на его просмотр было недостаточно.

У функции есть несколько аргументов:

add_submenu_page( $parent_slug, $page_title, $menu_title, $capability, $menu_slug, $function, $position );
Название Тип данных Описание
$parent_slug строка Ярлык (slug) родительского пункта меню, в который добавляется дочерний. Либо название файла страницы администрирования WordPress. Если поставить значение NULL, то страница не будет появляться в пункте меню. Примеры значений:
index.php или функция add_dashboard_page() — Консоль (Dashboard).

edit.php или функция add_posts_page() — Посты (Posts).

upload.php или функция add_media_page() — Медиафайлы (Media).

link-manager.php или функция add_links_page() — Ссылки (Links).

edit.php?post_type=page или функция add_pages_page() — Страницы (Pages).

edit-comments.php или функция add_comments_page() — Комментарии (Comments).

edit.php?post_type=your_post_type — Произвольные типы записей.

themes.php или функция add_theme_page() — Внешний вид (Appearance).

plugins.php или функция add_plugins_page() — Плагины (Plugins).

users.php или функция add_users_page() — Пользователи (Users).

tools.php или функция add_management_page() — Инструменты (Tools).

options-general.php или функция add_options_page() — Настройки (Settings).

Удаление пункта и подпункта бокового меню

Удалить пункт и подпункт бокового меню можно с помощью функций «remove_menu_page» и «remove_submenu_page» соответственно. Функция для удаления верхнего пункта меню принимает только один аргумент — ярлык (slug), который был указан при создании пункта. А для удаления подменю надо указать ярлык для родительского и дочернего пункт одномременно:

remove_menu_page( $menu_slug ); remove_submenu_page( $menu_slug, $submenu_slug );

Продемонстрируем, как можно удалить пункт меню и подпункты:

add_action( 'admin_menu', 'remove_menu' ); function remove_menu()< remove_menu_page( 'plugins.php' ); // удалим закладку плагинов remove_submenu_page( 'plugins.php', 'myplugin' ); // удалим пункт со своим плагином >

Advanced Sidebar Menu — виджет зависимого бокового меню для wordpress

Зависимое бокового меню

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

Теоретически, реализовать такую фишку можно с помощью функции wp_nav_menu и какого-то хитрого PHP кода, но я предлагаю воспользоваться готовым решением — виджетом меню для wordpress под названием Advanced Sidebar Menu. Это максимально просто и не нужно делать никакие правки шаблона.

Плагин Advanced Sidebar Menu

Скачать плагин можно отсюда или установить через админку. Основная функция — создание и вывод динамического бокового меню с учетом связи «родитель / наследник» для страниц и категорий сайта.

Никаких дополнительных настроек после установки делать не нужно, в разделе «Внешний вид» — «Виджеты» просто появится 2 новых элемента: Advanced Sidebar Pages Menu и Advanced Sidebar Categories Menu. Настройки данных виджетов меню для wordpress плюс-минус похожие:

Виджеты Advanced Sidebar Menu

  • 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 или знаете другие подходящие виджет меню для решения этой задачи, пишите в комментариях.

Понравился пост? Подпишись на обновления блога по RSS wordpress insideRSS, RSS wordpress insideEmail или twitter wordpress insidetwitter!

рейтинг

Оцените статью:

(голосов — 7, средний балл: 5,29 из 7)

категорияКатегории: Виджеты; Плагины;
тегиТеги: вордпресс веб-разработка, меню и навигация, плагины и виджеты, сайдбар.

Похожие статьи:

  1. Tabbed Widgets Plugin для табов в wordpress блоге
  2. 5 плагинов популярных постов в вордпресс
  3. Display Widgets — показываем/скрываем виджеты на страницах
  4. Quotes Collection для вывода случайных цитат (записей)
  5. Simple Music Widget — виджет музыкального плеера

Вертикальное меню с выпадающим списком на WordPress

Сегодня разберем, как сделать на WordPress вертикальное меню с выпадающим списком при помощи плагина. Делается всё очень просто, а главное, большинство функций у плагина бесплатные.

Плагин вертикального аккордеон меню для сайдбара

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

Итак, приступим к созданию вертикального выпадающего меню.

Скачиваем и устанавливаем плагин Bellows Accordion Menu — он есть в репозитории WordPress.

плагин Bellows Accordion Menu

Далее идём во вкладку «внешний вид/виджеты». И перетаскиваем виджет плагина «Bellows Accordion — standart menu» в сайдбар сайта.

Добавляем вертикальное меню в сайдбар

После этого открываем настройки виджета и выбираем меню, которое будет в нём отображаться.

вертикальное wordpress меню

После этого у вас уже заработает выпадающее вертикальное меню со стандартными настройками. Далее можно перейти в настройки плагина и поменять внешний вид. Делается это во вкладке «Basic configuration/skin»

Меняем внешний вид вертикального меню

По умолчанию, в бесплатной версии, есть всего три темы на выбор: синяя, светлая и серая. В нашем случае мы выберем светлую тему «Vanilla». Если же данные цветовые решения и сам стиль меню вам не подходят, то их можно поменять при помощи правки CSS кода. Но это уже другая история.

Каким ещё функционалом обладает плагин вертикального меню для WordPress

  • Помимо виджета, его можно вставить при помощи шорткода или php в любое место на сайте.
  • Можно установить любой шрифт.
  • Есть поддержка Font Awesome

Платная версия плагина Bellows Accordion Menu

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

выпадающее меню на WordPress

  • 20 готовых стилей на выбор
  • Простое изменение внешнего вида без знания CSS
  • Добавление иконок и картинок
  • Пользовательский контент — в пункты меню можно добавить любой текст, HTML или шорткод

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

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

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