Intereting Posts
бесплатная форма wordpress Показывать пользовательский термин или таксономию переключился с query_posts на WP_query, теперь не работает? Внутренняя ошибка сервера только для интерфейсов и определенных страниц администрирования Как применить фильтр редактора к сообщениям с определенным пользовательским типом сообщения Список авторов с последним заголовком и порядком последнего сообщения Список всех подкатегорий из категории Получать количество сообщений на данной странице Получить определенную категорию сообщений при использовании настраиваемого типа сообщений Страница холдинга обслуживания при переносе веб-сайта изменение условий поиска Noindex, nofollow застрял на главной странице Как я могу сделать wp-сайт в мобильном приложении? Сравните «Основной» идентификатор сообщения с идентификатором внутри цикла wp_query Действие wp_ajax не выполняется

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

В 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 … если я понимаю вас, и я все еще не уверен, что это так.