Intereting Posts
Как подключить пользовательские таксономии к пользовательским типам сообщений и заставить постоянные ссылки работать? Показывать пользовательский тип сообщения на странице архива по категориям почему так много javascript-библиотек загружаются вместе с моим сайтом? Как разрешить Unfiltered HTML в wordpress multisite install Добавить мета значение в пользовательский тип сообщения в публикации Как предотвратить появление определенных файлов плагинов или подпапок в списке «файлы плагинов» Htaccess удаляет даты с корневого сайта, но не из поддомена Создание «разделов» меню и палитры «в WordPress 3» используется как CMS Как отображать пользовательское поле WordPress только в определенный день недели? $ wp_query при попытке создать виртуальную страницу Как получить «персонализированный тип сообщения» -архив с постоянной работой с ним? Paginated Комментарии «ответ» не работает! Загружать файлы только на FTP Ошибка миграции базы данных Отзывчивое раскрывающееся меню

Как получить глубину меню в шаблоне

В wp_nav_menu я использую для меню, с пользовательским ходоком, я могу получить параметр $ depth в функции start_el

function start_el(&$output, $item, $depth, $args) 

но, вне этого wp_nav_menu (), как я могу получить глубину меню для выбранного элемента? Например :

  • Главная
  • level1menuelement1 -level2menuelement1 (первый элемент первого подменю) -level2menuelement2 (второй элемент первого подменю)
  • level1menuelement2

В этом случае я хочу знать, находится ли мой пост на уровне 1 или нет, для отображения определенного блока или нет.

Есть ли функция кодового слова, позволяющая облегчить извлечение этой глубины или она достигается программно?

благодаря

Solutions Collecting From Web of "Как получить глубину меню в шаблоне"

как получить связь между страницей и пунктом меню? = существует ли функция WP, сообщающая, что эта страница связана с этим пунктом меню, который имеет или не имеет родительского элемента

Внутри ходока, внутри метода start_el (который вы упомянули), $item->object_id – это идентификатор страницы.

В противном случае вам нужно вытащить меню …

 $locations = get_nav_menu_locations(); $nav_items = wp_get_nav_menu_items($locations['your-menu-location']); 

… и цикл над этим массивом, чтобы соответствовать текущему идентификатору страницы с object_id в данных $nav_menu … если я понимаю вас, и я все еще не уверен, что это так.