Я видел несколько решений, как вручную прикреплять ссылки к новой панели администратора WP, но мне нужно сделать это намного проще для администраторов моего сайта.
Мне пришло в голову, что самым простым решением было бы создать пользовательское меню навигации, а затем «прикрепить» это меню к панели администратора. Таким образом, администратор сайта может очень легко добавлять новые ссылки в панель администратора, просто добавляя страницы в пользовательское меню.
Основная идея заключалась в том, чтобы разместить раскрывающееся меню, отображающее страницы меню, непосредственно в правой части панели администратора.
См. этот вопрос для получения дополнительной информации о добавлении меню в панель администратора WordPress.
Интересный вопрос. В настоящее время это невозможно напрямую, но это должно быть выполнимо, вероятно, с помощью пользовательского Walker, который не выводит HTML, а вместо этого прикрепляет его к меню.
@Chris_O На самом деле это то, чего я пытался избежать. хотя намек ценю
@Jan Ян — Хотелось бы услышать больше об этой концепции. Выполняю поиск сейчас, чтобы узнать больше о нестандартных ходунках, новой области для меня. Надеюсь, люди увидят ценность в прикреплении фактического меню к панели администратора.
Вау, это действительно похоже на то, что я искал. Сейчас 3 часа ночи, так что поздно для реализации сегодня вечером, отчитаюсь завтра, но хотел сказать спасибо.
На самом деле это отлично работает, но мне нужно внести одно изменение, которое до сих пор ускользает от меня. Заголовок навигации самого верхнего уровня ссылается на страницу контактов, но в меню, которое я назначил панели, нет страницы контактов. Однако все ссылки в подменю указывают на правильные страницы, так что это хорошо. Я хотел бы полностью удалить ссылку из «родительской» навигационной ссылки.
@shawn: Верхний пункт меню, помеченный как меню WPSE 15186 в моем примере? Странно, он должен иметь пустой
href
атрибут и, таким образом, перезагружать текущую страницу при нажатии на нее. Вы также можете установитьonclick
атрибут,return false;
чтобы ничего не делать.Да, это было действительно странно, когда он перетаскивал страницу контактов. Однако установка href=» решила проблему. Спасибо
Оказывается, это очень легко! Нет необходимости в специальных ходунках,
wp_get_nav_menu_items()
возвращает все необходимое. В этом примере добавляется один пункт корневого меню, а затем меню, вы можете сделать это по-другому, если хотите. Он отображает все дополнительные функции меню, которые я смог найти в коде, я не знаю, можно ли установить их все в пользовательском интерфейсе меню.