Создание меню WordPress
В CMS WordPress можно делать произвольное меню, которое встраивается в любую тему и редактируется через панель администрирования. Попробуем создать такое меню.
Для начала нам потребуется включить возможность создания пользовательских меню в нашей теме. Для этого откроем файл functions.php в папке с темой и добавим туда вызов функции register_nav_menus, в котором будет массив с названиями мест, куда может быть встроено наше меню код:
'Верхнее меню', 'bottom' => 'Нижнее меню' ));
Функция «register_nav_menus» регистрирует меню. Сами меню настраиваются в панели администрировани и в дальнейшем будут выводиться в шаблоне с помощью функции «wp_nav_menu».

Таким образом мы зарегистрировали два меню с идентификаторами «top» и «bottom». Теперь перейдём в панель администрирования. В закладке «Внешний вид» — «Меню» найдите вкладку «Управление областями». Вы увидите в списке название «Верхнее меню» и «Нижнее меню» — это области темы, которые мы зарегистрировали под меню ранее с помощью функции «register_nav_menus». В выпадающих списках выберите меню, которые необходимо отображать в этих областях. Чтобы создать сами меню и настроить пункты используйте закладку «Редактировать меню». В ней создайте меню и сохраните его. Затем вернитесь на вкладку «Управление областями» и выберите созданное меню для отображения в нужной области.
После окончания изменения меню в панели администрирования попробуем добавить его в тему сайта. Для этого откройте нужный файл шаблона и добавьте в него следующий PHP код с вызовом функции «wp_nav_menu»:
'', // (строка) Расположение меню в шаблоне. Ключ, под которым было зарегистрировано меню в функции register_nav_menus (в нашем случае это "top" или "bottom") 'menu' => '', // (строка) Название выводимого меню. Если не указать, то берётся название из панели администрирования. Если указано, то параметр 'theme_location' игнорируется. Можно вместо названия указывать id меню - целое число. 'container' => 'div', // (строка - название тега) Чем обрамляется меню. Если не указано, то это тег div. 'container_class' => '', // (строка) содержание атрибута class контейнера (div тега) 'container_id' => '', // (строка) id контейнера (div тега) 'menu_class' => 'menu', // (строка) содержание атрибута class меню (списка ul) 'menu_id' => '', // (строка) id меню (списка ul) 'echo' => true, // (логическая) Выводить меню (при значении "true") или возвращать код вывода в переменную (при значении "false"). 'fallback_cb' => 'wp_page_menu', // (строка) Резервная функция, если меню не существует 'before' => '', // (строка) Текст перед каждым пунктом меню 'after' => '', // (строка) Текст после каждого пункта меню 'link_before' => '', // (строка) Текст перед анкором ссылки 'link_after' => '', // (строка) Текст после анкора ссылки 'depth' => 0, // (целое число) Глубина вложенности (0 - нет ограничений, 2 - два уровня меню) 'walker' => '', // (объект) Класс собирающий меню. По умолчанию объект класса Walker_Nav_Menu ));
Пустые параметры можно не указывать, поэтому код выше можно переписать так:
'top', 'container' => 'div', ));
Проверка существования регистрации меню
В WordPress есть функция has_nav_menu, которая проверяет было ли зарегистрировано меню по заданному идентификатору (в нашем случае значения «top» и «bottom»). Эту функцию часто используют при выведении меню. К примеру, так:
'top', 'container' => 'div', )); >else
Создание и настройка меню в WordPress

Приветствую друзья! В этом уроке вы узнаете как создать меню в WordPress и как добавить страницу в меню. В прошлых уроках мы уже разобрались с Вами как создавать страницы и записи в WordPress, а сегодня мы научимся и пошагово разберем как создать меню и как добавить вторую вкладку в шапке сайта (выпадающее подменю) в WordPress.
Создание меню в WordPress
1. Для начала необходимо перейдите в панели администратора в Внешний вид — Меню.

2. Теперь необходимо создать меню, для этого нажимаем по «Создайте новое меню».

3. В текстовом поле вводим название для меню WordPress и нажимаем кнопку «Создать меню».

4. Меню создано. Теперь необходимо добавить нужные Вам страницы, записи, метки, рубрики и т.п. в меню WordPress. Для этого нужно выбрать необходимый пункт, например «Страницы» и отметить галочками те, которые Вы хотите добавить. После этого нажимаем «Добавить в меню».

После того как вы добавили нужные страницы, рубрики или записи в меню нажмите «Сохранить меню».
Важно! Если Вы не видите в списке нужные пункты, нажмите в верхнем правом углу «Настройка экрана» и проставьте галочки на необходимых пунктах. После этого они появятся в списке и вы сможете добавить их в меню.
5. Для того, чтобы созданное меню отображалось на главной странице сайта WordPress, необходимо перейти в «Управление областями» и выбрать в списке созданное нами меню, после чего нажать «Сохранить изменения».

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

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

В этом примере страницу «Пример страницы» делаем выпадающим подменю для пункта меню «Роланд Дискейн»
Если у вас возникли вопросы по созданию меню, задавайте их в комментариях.
Приветствую друзья! В этом уроке вы узнаете как создать меню в WordPress и как добавить страницу в меню. В прошлых уроках мы уже разобрались с Вами как создавать страницы и записи в WordPress, а сегодня мы научимся и пошагово разберем как создать меню и как добавить вторую вкладку в шапке сайта (выпадающее подменю) в WordPress. Создание меню в WordPress 1. Для начала необходимо перейдите в панели администратора в Внешний вид — Меню. 2. Теперь необходимо создать меню, для этого нажимаем по «Создайте новое меню». 3. В текстовом поле вводим название для меню WordPress и нажимаем кнопку «Создать меню». 4. Меню создано. Теперь необходимо добавить нужные Вам страницы,…
Обзор
Проголосуйте за урок
Оценка
Итог : Уважаемые читатели! Если вам понравилась статья не поленитесь проголосовать и оставить комментарий, ведь так я смогу понять полезность уроков и статей, и улучшить их качество в будущем. Заранее спасибо!
Создать меню
При создании нового сайта меню формируется автоматически. Однако, если вам нужно создать новое меню с нуля, в этом руководстве будет показано, как это сделать.
В этом руководстве
- Создание меню в редакторе сайта
- Создание меню в консоли
- Создание меню в конфигураторе
- Обучающее видео
Создание меню в редакторе сайта
Если вы не можете найти раздел Внешний вид → Меню в своей консоли, это значит, что для вашего сайта используется редактор сайта. Для управления меню перейдите в раздел Внешний вид → Редактор и измените блок «Навигация» вместо выполнения остальных шагов в этом руководстве.
Создание меню в консоли
Чтобы создать меню на консоли WP Admin, перейдите в раздел консоли Внешний вид → Меню.
Щелкните ссылку Создать новое меню, введите имя меню (удобное для запоминания) и нажмите кнопку Создать меню.
После создания первого меню появятся две новые опции.

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

- Вы увидите, что меню было создано по умолчанию. Обычно оно называется Основное или Главное меню. Процедуру добавления ссылок в это меню см. в следующем руководстве.

- Присвойте имя меню, например «Основное меню». Имя меню публично не отображается.
- В разделе Области для меню установите хотя бы один флажок. Меню появится в том месте, которое вы выбрали. (Доступные области для меню будут зависеть от темы.)
- Нажмите Далее, чтобы начать добавлять элементы в новое меню.

Области для меню
Параметр «Области для меню» в конфигураторе определяет, где на сайте отображается меню. Доступные опции будут зависеть от темы.
Не забудьте установить хотя бы один флажок в разделе Области для меню. Расположение главного меню обычно называется меню заголовка, основным, верхним или главным меню.
Также вы можете видеть меню ссылок на соцсети — тип меню для отображения ссылок на ваши страницы в социальных сетях. Скорее всего, вы не захотите установить этот флажок главного меню, так как это специальное меню со значками социальных сетей.
Как создать меню в WP?
Добрый день, как перенести правильно в WP меню по ангалогии HTML вертски. Не могу повесить классы на ul, li , a.
'primary_menu', 'container' => '', 'items_wrap' => '%3$s', 'list_item_class' => 'header_nav-item', 'link_class' => 'nav-link', ) ); ?>- Вопрос задан более года назад
- 246 просмотров
3 комментария
Простой 3 комментария

Иван Медведев @mediol-name
Буквально только что выводил меню и тоже с классами беда, была. Поправил селекторы в стилях, чтобы обращаться по тегу и все. А контейнеру меню дал нужный класс
'header_menu', 'container' => 'nav', 'menu_class' => 'menu', ] ); ?>
Алексей @brutto333 Автор вопроса
Иван Медведев, спасибо помогло !
Иван Медведев @mediol-name
Алексей, Напишите в ответы и отметьте решением, чтоб и другим помогло)
Решения вопроса 0
Ответы на вопрос 2
Антон Литвиненко @AntonLitvinenko
HTML coderЕсть несколько подходов как раздать нужные классы в меню
1. wp_nav_menu позволяет дать классы обретке над меню, самому меню, добавить разметку перед и после ссылки с помощью настроек after и before.
2. Добавить классы к элементам Li можно таким образом
https://stackoverflow.com/questions/14464505/how-t.
3. Также это можно сделать через фильтр
https://developer.wordpress.org/reference/hooks/na.
4. Использовать класс walker_nav_menu, но тут нужны навыки пхп, зато он позволяет делать почти что угодно
https://wp-kama.ru/function/walker_nav_menu
https://misha.agency/course/menu-wordpress
https://dimox.name/bem-wp-nav-menu-walker/5. Переверстать меню используя стандартные классы вордпресса и впредь пользоваться этим кодом как заготовкой
Ответ написан более года назад
Комментировать
Нравится 1 Комментировать
Артем Золин @artzolin Куратор тега WordPress
php, WordPress разработка сайтов artzolin.ruДополню ответ Антон Литвиненко. Если у вас полностью кастомная верстка, то проще всего получить массив элементов с помощью wp_get_nav_menu_object() и вывести произвольным циклом. Получить можно по названию:
$menu_name = 'Menu'; $nav_menu = wp_get_nav_menu_object( $menu_name ); if ( !$nav_menu ) < $menu_id = wp_create_nav_menu( $menu_name ); >else < $menu_id = $nav_menu->term_id; > // получаем элементы меню $nav_menu_items = wp_get_nav_menu_items( $menu_id );По зарегистрированной локации:
$menu_location = 'primary'; $locations = get_nav_menu_locations(); if ( isset( $locations[$menu_location] ) )