Меню администратора - выделение меню верхнего уровня на странице подменю (без отображения подменю)
-
-
См .: http://wordpress.stackexchange.com/a/105370/21376See: http://wordpress.stackexchange.com/a/105370/21376
- 0
- 2013-08-30
- s_ha_dum
-
К сожалению,этот метод,похоже,работает аналогично [remove_submenu_page] (http://codex.wordpress.org/remove_submenu_page) и при доступе к странице выдается сообщение «У вас недостаточно прав для доступа к этой странице».сообщение.Хотя я проверю это дальше.Спасибо за предложение.Unfortunately, that method seems to work similar to [remove_submenu_page](http://codex.wordpress.org/remove_submenu_page) and makes accessing the page throw a "You do not have sufficient permissions to access this page." message. I'll check up further on it though. Thanks for the suggestion.
- 0
- 2013-09-02
- Jayawi Perera
-
Достигнет ли той же цели интерфейс с вкладками на главной странице?http://getbutterfly.com/how-to-create-a-tabbed-interface-for-your-wordpress-plugin/Would a tabbed interface within your main page achieve the same goal? http://getbutterfly.com/how-to-create-a-tabbed-interface-for-your-wordpress-plugin/
- 2
- 2013-09-03
- epilektric
-
Это интересный подход.Я не совсем уверен,что хочу,чтобы все разные страницы (всего их около 8) загружались во вкладки.Полагаю,я мог бы выполнить некоторую загрузку AJAX,при которой содержимое отдельной страницы загружается по мере необходимости.Мне все еще интересно найти решение исходной проблемы.Однако я думаю,что для текущей версии WP это может быть невозможно без изменения основных файлов (чего я не хочу делать).Я проверю подход с вкладками.Спасибо за предложение.That's an interesting approach. I'm not entirely sure I want to have all the different pages (there are about 8 or so in total) loading in tabs though. I suppose I could do some AJAX loading where the individual page content is loaded as and when it is needed. I'm still interested in finding a solution for the original problem. However, I think it may not be possible for the current WP version without modifying the core files (which I do not wish to do). I'll check out the tabbed approach. Thanks for the suggestion.
- 0
- 2013-09-04
- Jayawi Perera
-
Здесь есть простой способ решить эту проблему: https://wordpress.org/support/topic/no-page-menu-item/There's an easy way to resolve it here: https://wordpress.org/support/topic/no-page-menu-item/
- 0
- 2019-12-20
- Tsage
-
1 ответ
- голосов
-
- 2014-09-20
Это немного запоздалый ответ,и я не знаю,разбирался ли @Jay когда-нибудь с этим,но для всех,у кого есть такая же проблема,вот как я ее исправил.
Страницы меню
function my_admin_menu() { add_menu_page( 'Page title', 'Menu title', 'manage_options', 'my_page', null, null, 99 ); add_submenu_page( 'my_page', 'Subpage 1 title', 'Subpage 1 menu title', 'manage_options', 'my_subpage_1', null ); add_submenu_page( 'my_page', 'Subpage 2 title', 'Subpage 2 menu title', 'manage_options', 'my_subpage_2', null ); } add_action( 'admin_menu', 'my_admin_menu' ) ); function my_admin_head() { remove_submenu_page( 'my_page', 'my_subpage_1' ); } add_action( 'admin_head', 'my_admin_head' );
См. Кодекс для remove_submenu_page .
That's a bit of a late answer and I don't know if @Jay ever sorted it out, but to anyone having the same issue, here's how I fixed it.
Menu Pages
function my_admin_menu() { add_menu_page( 'Page title', 'Menu title', 'manage_options', 'my_page', null, null, 99 ); add_submenu_page( 'my_page', 'Subpage 1 title', 'Subpage 1 menu title', 'manage_options', 'my_subpage_1', null ); add_submenu_page( 'my_page', 'Subpage 2 title', 'Subpage 2 menu title', 'manage_options', 'my_subpage_2', null ); } add_action( 'admin_menu', 'my_admin_menu' ) ); function my_admin_head() { remove_submenu_page( 'my_page', 'my_subpage_1' ); } add_action( 'admin_head', 'my_admin_head' );
See the Codex for remove_submenu_page.
Это текущая ситуация:
Мое требование - сделать следующее:
Я попытался добавить родительский ярлык к страницам подменю. Это,конечно,делает его ожидаемым в пункте меню верхнего уровня. Затем я попытался удалить элемент подменю с помощью remove_submenu_page. Однако,поскольку при этом удаляется вся страница подменю,это не решает проблему.
Я считаю,что логичным будет дать родительский ярлык,поскольку элемент меню верхнего уровня должен знать,что страница,к которой осуществляется доступ,попадает под него. Проблема в том,что не отображается пункт меню страницы подменю. Я не могу найти функцию,которая имеет дело непосредственно с пунктами меню.
Это правильный подход или есть лучшая альтернатива? Есть ли действие/фильтр/ловушка,с помощью которой я могу выполнить то,что мне нужно?
Изменить №1:
Провел дальнейшее исследование/тестирование. Установка для параметраmenu_title значенияnull или "" в вызове add_submenu_page заставляет заголовок не отображаться. Однако тег & lt; li > который содержит элемент подменю,все еще существует,и с ним можно взаимодействовать. Когда есть множество страниц подменю (как в моем случае),пустой тег & lt; li > элементы складываются и образуют длинную пустую область в меню. Это далеко от идеала,и поэтому я все еще ищу решение.
Изменить №2: Пытался изменить глобальное значение $ submenu после комментария от @s_ha_dum. Однако любое удаление раздела меню,относящегося к странице,также приводит к удалению страницы,аналогичной remove_submenu_page,и,таким образом,делает эту страницу недоступной.