wordpress создать меню в админке
add_menu_page() WP 1.5
Добавляет пункт (страницу) верхнего уровня в меню админ-панели (в один ряд с постами, страницами, пользователями и т.д.).
Используется для создания главного пункта меню в админ-панели и прикрепления к этому пункту функции, которая будет отвечать за страницу в админ-панели связанную с этим пунктом меню.
Нужно вызывать через один из хуков:
Если нужно добавить дочерний пункт меню, используйте add_submenu_page().
Если вы видите ошибку «You do not have sufficient permissions to access this page.» при попытке зайти на страницу, это значит, что вы подключаете функцию слишком рано.
Подключать функцию нужно на хуке admin_menu.
Заметки
Функция проверяет права пользователя, чтобы отобразить пункт меню и открыть доступ к странице этого пункта меню.
Пример, как разрешить Редакторам (Editor) сохранять данные:
Возвращает
Использование
Уникальное название (slug), по которому затем можно обращаться к этому меню.
Можно указать произвольную ссылку (URL), куда будет вести клик пункта меню.
Название функции, которая выводит контент страницы пункта меню.
Этот необязательный параметр и если он не указан, WordPress ожидает что текущий подключаемый PHP файл генерирует код страницы админ-меню, без вызова функции. Большинство авторов плагинов предпочитают указывать этот параметр.
Два варианта установки параметра:
Иконка для пункта меню.
Число определяющее позицию меню. Чем больше цифра, тем ниже будет расположен пункт меню.
Внимание! Если два пункта используют одинаковую цифру-позицию, один из пунктов меню может быть перезаписан и будет показан только один пункт из двух. Чтобы избежать конфликта, можно использовать десятичные значения, вместо целых чисел: 63.3 вместо 63. Используйте кавычки: «63.3».
По умолчанию, пункт меню будет добавлен в конец списка.
Список позиций для базовых пунктов меню:
По умолчанию: null (в конце списка иконок)
Примеры
#1 Пункт настройки темы
Этот пример показывает как добавить страницу настроек темы, в главное меню админ-панели WordPress.
#2 Добавление меню для администратора
Добавим пункт меню в админ-панель, который будет виден только администраторам:
Вариант 1 (только для плагинов):
В этом случае код страницы должен быть расположен в файле wp-content/plugins/myplugin/myplugin-admin.php :
#3 Добавление пункта меню, с проверкой что его еще нет
#4 Проверка наличия пункта меню или пункта подменю
Эта функция проверяет наличие пункта меню или пункта подменю по указанному идентификатору этого пункта.
WordPress.org
Русский
Рубрики
Внешний вид — меню
Раздел меню позволяет пользователю создать собственное меню (также известное как панель навигации, меню навигации или главное меню). Это раздел сайта, который помогает посетителям перемещаться по сайту. В зависимости от используемой темы обычно на сайте будет одно меню навигации, а некоторые темы могут включать дополнительные меню или меню подвала сайта. Важно иметь аккуратное и упрощенное меню навигации, чтобы не сбивать с толку посетителей.
По умолчанию WordPress автоматически добавляет все опубликованные страницы в меню. Однако возможна настройка меню, например добавление ссылки на категорию или на внешний сайт, изменение порядка ссылки меню или создание подменю.
Раздел меню доступен через Внешний вид > Меню консоли.
Настройки экрана # Настройки экрана
Настройки экрана позволяют вам выбрать, какие элементы будут отображаться или не отображаться в соответствующем разделе. При нажатии на вкладку «Настройки экрана» отображается список возможных элементов и параметров с флажком рядом с каждым. Установите флажок для каждого элемента или параметра, который вы хотите отобразить, или снимите флажок, чтобы этот модуль не отображался. Нажмите на вкладку Настройки экрана еще раз, чтобы закрыть ее.
Некоторые элементы, например записи, по умолчанию скрыты.
Создание меню # Создание меню
Добавление пунктов в меню # Добавление пунктов в меню
Вы можете добавлять в меню различные типы элементов, такие как страницы, рубрики или даже произвольные ссылки. Они разделены между панелями слева от меню, которое вы редактируете. Пример того, как добавить ссылку на страницу:
Ваше пользовательское меню теперь сохранено.
Примечание. Настройки экрана позволяют вам выбирать, какие элементы вы можете использовать для добавления в меню. Некоторые элементы, например метки, по умолчанию скрыты.
Удаление пункта меню # Удаление пункта меню
Создание многоуровневых меню # Создание многоуровневых меню
При планировании структуры вашего меню полезно думать о каждом пункте меню как о заголовке в формальном отчетном документе. В формальном отчете заголовки основных разделов (заголовки уровня 1) расположены ближе всего к левому краю страницы; заголовки подразделов (заголовки уровня 2) смещены немного дальше вправо; любые другие подчиненные заголовки (уровень 3, 4 и т. д.) в том же разделе имеют еще больший отступ вправо.
Редактор меню WordPress позволяет создавать многоуровневые меню с помощью простого «перетаскивания». Перетащите элементы меню вверх или вниз, чтобы изменить порядок их отображения в меню. Перетаскивайте элементы меню влево или вправо, чтобы создать подуровни в вашем меню.
Чтобы сделать один пункт меню подчиненным по отношению к другому, вам нужно расположить «дочерний элемент» под его «родителем», а затем перетащить его немного вправо.
Добавление меню на ваш сайт # Добавление меню на ваш сайт
Если ваша текущая тема поддерживает настраиваемые меню, вы сможете добавить новое меню в одну из Область отображения.
Если ваша текущая тема не поддерживает настраиваемые меню, вам нужно будет добавить новое меню через виджет «Пользовательское меню» в разделе виджетов.
Перестановка, настройка пунктов меню # Перестановка, настройка пунктов меню
После того, как элемент добавлен в меню, эти элементы меню можно изменить. Поместив курсор мыши на заголовок пункта меню, когда курсор мыши изменится на 4 стрелки, удерживайте левую кнопку мыши нажатой, перетащите модуль в то место, где вы хотите его разместить, затем отпустите кнопку мыши (это называется перетаскиванием). Помните, что вы можете перетащить элемент меню немного вправо от элемента меню над ним, чтобы создать иерархические отношения (родительский/дочерний) в меню.
У каждого пункта меню есть стрелка конфигурации справа от заголовка пункта меню, при нажатии на которую открывается окно конфигурации. Кликните на стрелку второй раз, чтобы закрыть окно конфигурации. Если вы не видите «Цель ссылки», «Классы CSS», «Отношение к ссылке (XFN))» и «Описание», то в разделе Настройки экрана убедитесь, что эти флажки установлены, чтобы их можно было здесь увидеть.
Затем выбор конфигурации:
Текст ссылки
Текст для этого конкретного пункта меню
Атрибут, используемый при отображении метки
Открывать в новой вкладке
Отметте флажком, если вы хотите, что бы страница открывалась в новом окне.
Классы CSS (необязательно)
Классы CSS для этого пункта меню
Отношение к ссылке (XFN)
Позволяет автоматически создавать атрибуты XFN, чтобы вы могли показать, как вы связаны с авторами/владельцами сайта, на который вы ссылаетесь.
Описание
Описание будет отображаться в меню, если текущая тема его поддерживает.
Меню сайта
Меню сайта представляют собой список ссылок, которые обычно обеспечивают основную навигацию для вашего сайта. Область для меню может изменяться в зависимости от вашей темы, а некоторые темы содержат дополнительные меню, например меню ссылок на социальные сети.
Создать меню
Ниже представлен порядок редактирования существующих меню сайта или создания произвольных меню сайта.
Области для меню, доступные в теме Rivington, — это Основное меню и Меню ссылок на социальные сети.
Пункты меню Ссылки на социальные сети оформлены как значки социальных сетей. В данном примере мы выбираем Основное меню.
Добавить
В дополнение к уже опубликованным страницам в пользовательское меню можно добавлять пункты меню разного типа:
Для добавления одного из этих пунктов меню:
Если вы хотите добавить в меню страницу или запись, которые не использовались ранее, задайте их имена в поле Добавить новую страницу или Добавить новую запись. Пустая страница//запись будет добавлена на ваш сайт и автоматически добавится в ваше меню.
Затем вы сможете добавлять содержимое на страницу или в запись через страницы//записи вашего сайта.
Область отображения меню
Если вы хотите, чтобы это меню отображалось на вашем сайте, выберите Область для меню. Для основной навигации корректный параметр зависит от используемой темы. Он часто указывается как «Основная», «Заголовок» или «Верхняя часть».
Если тема содержит меню ссылок на социальные сети, она будет автоматически преобразовывать пункты меню в значки сайтов популярных социальных сетей.
Автоматически добавлять страницы в ваше меню
В пункте Опции меню поставьте флажок «Автоматически добавлять новые страницы верхнего уровня в это меню», если вы хотите, чтобы новые создаваемые страницы автоматически добавлялись в меню.
Если вы не установите этот флажок, то изменить ваше пользовательское меню и добавить новые страницы для навигации можно будет позже.
Изменить порядок элементов меню
Для изменения порядка пунктов меню переместите пункт меню, нажав ссылку Изменить порядок:
Создать выпадающие меню
Вложение страницы создает подменю или выпадающее меню.
Создать неинтерактивный элемент меню
Вы можете создать неинтерактивный элемент меню, что полезно при создании выпадающих меню.
После добавления неинтерактивного элемента меню вы сможете добавить страницы или записи, которые вы хотите отображать в этом меню, после чегоизменить их порядок для создания вашего выпадающего меню.
Удалить пункты меню
Редактирование содержимого, которое отображается в меню вашего сайта, не приведёт к удалению страниц или записей, которые вы создали для своего сайта. При удалении элемента меню происходит только удаление ссылки на страницу из вашего меню.
Настроить текст пунктов меню
Чтобы изменить название пункта меню, отображаемое на сайте, отредактируйте метку навигации.
Например, страница может называться «Связаться с командой разработчиков», но вы хотите, чтобы в меню она просто отображалась как «Контакты».
Изменить дизайн меню
При желании изменить анимацию появления меню, например, положение, выравнивание или размер, можно использовать пользовательские CSS, доступные в плане WordPress.com Premium или выше.
Сохранить изменения
Часто задаваемые вопросы
Если в вашей теме меню по умолчанию не отображается, внесите любое изменение в это меню и сохраните его. В результате данное меню должно появиться в теме.
Как создать свое меню в админ-панели WordPress
2016-12-31 / Вр:13:38 / просмотров: 10073
Приветик!
Не верится, что наконец-то, спустя 2 года, я надумался рассказать об этом вам. Надеюсь, сегодня порадовать своих читателей и любителей WordPress.
Ведь в сегодняшней статье я расскажу, как создать свое меню в админ-панели WordPress.
Теперь, если вы будете создавать свой плагин, вы сможете сделать к нему и настройки.
Если же вы создаете тему для WordPress, вы сможете сделать дополнительные фишки и настройки.
Что ж, приступлю сразу к делу.
Для тех, кто оказался на моем блоге впервые или только недавно его посещает, рекомендую почитать статью, как сделать плагин для WordPress.
В статье увидите пример для темы. Точнее, сделаем вместе с вами настройки для темы и выведем настройки в отдельном меню в админ-панели.
Итак, нам нужен будет файл «functions.php» активной темы и весь предлагаемый код вставим в самый вверх сразу после знака « », а можно и так « ».
Как добавить меню
Для создания меню в админ-панели есть специальная функция « add_menu_page ».
Шаблон использования функции «add_menu_page»:
Описание:
Список позиций для базовых пунктов меню:
Приступим к практике.
Если вы сохраните, то в меню у вас появится еще один раздел меню «График работы»:
Теперь нужно создать функцию « grafik_rabot » для страницы «График работы», внутри которой вставим содержимое страницы.
Здесь главное не напутать с кавычками, так как php насчет одинарных и двойных кавычек очень чувствительный.
Вот так будет полностью выглядеть готовый код:
Если нужно добавить еще один раздел в меню, то для этого достаточно добавить еще одну функцию « add_menu_page », например:
Обратите внимание на разное название функции вызова страницы с содержимым. В первом случае это была функция « grafik_rabot », во втором функция « ceni ».
Вот готовый код (я заменил комментарий в коде для лучшего ориентирования):
Как бы на этом можно было и закончить статью, но хочу продолжить, так как не все возможности я раскрыл.
Как добавить подменю
Для создания подменю в админ-панели есть специальная функция « add_submenu_page ».
Шаблон использования функции «add_submenu_page»:
Описание:
Изменим пункт меню « Цены », добавим подменю « Новая цена », « Список цен ».
Вот так будет выглядеть код:
Вот результат, но мне жуть как не нравится, что дублируется название раздела «ЦЕНЫ»:
Выход из положения – использовать « remove_submenu_page »:
Строка №2 – « ceni.php » эта страница которую мы изначально прописали для цены.
Вот так будет выглядеть весь код:
Как добавить свое подменю в существующее меню
Если вы хотите добавить подменю в уже существующие по умолчанию в WordPress, то для каждого такого пункта меню существует своя функция.
Вот список:
К примеру, давайте добавим подменю «Плагин BlogGood» в меню «Настройки».
WordPress.org
Codex
Добавление административных меню
Contents
Вступление
Эта статья объясняет как добавить собственное административное меню в WordPress. Это предполагает что вы уже знакомы с основами Написание плагина и Plugin API действий и фильтров.
Меню и Подменю
Первый шаг в создании собственного административного меню — определить, к какому системному меню WordPress оно относится. Большинство плагинов добавляют свои меню в существующий верхний уровень меню WordPress. Вот руководство, что принадлежит к каждому меню верхнего уровня:
Settings / Настройки Отобажение настроек плагина которые доступны только администратору (также смотрите Создание страниц настройки). Manage Отображение управления ссылками, записями, категориями, изображениями, etc. Plugins / Плагины Установка/удаление, включение/выключение и редактирование плагинов. Presentation / Внешний Вид Управление темами/стилями файлов, боковой панелью, etc. Write / Записи Создание контента (записей и страниц). Users / Пользователи Управление пользователями.
Если ваш плагин вводит совершенно новое понятие или функцию для WordPress и нуждается в большем колличестве экранов, чтобы это сделать, для вашего плагина возможен вариант создания нового меню верхнего уровня. Это следует рассматривать только если вам действительно нужно несколько связанных экранов, чтобы сделать в WordPress к чему он изначально не предназначен. Примеры могут включать управление галерей изображений, администрирование баз данных, или управление конференцией.
С плагином Custom Admin Menu пользователи также имеют возможность сами решать, должен ли ваш плагин занять меню верхнего уровня или нет — вы можете дать понять пользователям, что они имеют такую возможность, особенно если вы решили создать меню верхнего уровня.
Admin Menu Functions
Теперь когда вы решили куда будете добавлять меню/подменю, следующий шаг расказать WordPress о новых страницах. Для этого нужно создать функцию, которую следует привязать к действию 'admin_menu' (пример приведен в конце раздела).
Меню верхнего уровня
The first thing you’ll need to do is to create a top-level menu, if you have decided that your plugin really needs one. You’ll use the add_menu_page function:
add_menu_page(page_title, menu_title, access_level/capability, file, [function]);
page_title Text that will go into the HTML page title for the page when the menu is active. menu_title The on-screen name text for the menu. access_level/capability The minimum user level or the capability required to display and use this menu page. file The PHP file that handles the display of the menu page content. function The function that displays the page content for the menu page.
Technically, the function parameter is optional, but if it is not supplied, then WordPress will basically assume that including the PHP file will generate the administration screen, without calling a function. Most plugin authors choose to put the page-generating code in a function within their main plugin file.
Sub-Menus
Once you have a top-level menu defined, or have chosen to use an existing WordPress top-level menu, you are ready to define one or more sub-menu pages using the add_submenu_page function. Make sure to add the submenu pages in the order you want them displayed.
add_submenu_page(parent, page_title, menu_title, access_level/capability, file, [function]);
parent The filename of the core WordPress admin file that supplies the top-level menu in which you want to insert your submenu, or your plugin file if this submenu is going into a custom top-level menu. (Examples: index.php, post.php, edit.php, themes.php, plugins.php, etc.) page_title Text that will go into the HTML page title for the page when the submenu is active. menu_title The on-screen name text for the submenu. access_level/capability The minimum user level or the capability required to display and use this submenu page. file For existing WordPress menus, the PHP file that handles the display of the menu page content. For submenus of a custom top-level menu, a unique identifier for this sub-menu page.
In situations where a plugin is creating it’s own top-level menu, the first submenu will normally have the same link title as the top-level menu and hence the link will be duplicated. The duplicate link title can be avoided by calling the add_submenu_page function with the parent and file parameters being given the same value.
function The function that displays the page content for the menu page.
Technically, as in the add_menu_page function, the function parameter is optional, but if it is not supplied, then WordPress will basically assume that including the PHP file will generate the administration screen, without calling a function. Most plugin authors choose to put the page-generating code in a function within their main plugin file.
Here’s a quick example, illustrating how to insert a top-level menu page and a sub-menu page, where the title on the sub-menu page is different from the top-level page. In this example, ‘my_magic_function’ is the name of the function that displays the first sub-menu page:
Since most submenus go into WordPress’s Options, Management, or Presentation menus, WordPress supplies three wrapper functions that make adding a submenu to those pages easier:
For the Options top-level menu (see Creating Options Pages for more on this) For Management For Presentation
Вставка страниц
Вот пример плагина WordPress, который вставляет новые меню в разные места:
Sample Menu Page
The example above contains several dummy functions, such as mt_options_page, as placeholders for actual page content. We need to turn them into real menu pages. So, let’s assume that our plugin has an option called mt_favorite_food, and that we want to allow the site owner to type in his/her favorite food on the plugin’s Option page. The mt_options_page function will need to put a data entry form on the screen to enable this, and also process the entered data. Here is a function that does this: