Intereting Posts
Отсечение выдержки с первым предложением Определите страницу, которую я просматриваю способ сделать все страницы с определенными тегами общедоступными? Где я могу найти версию моего блога WordPress? Почему мой настраиваемый тип сообщений не используется с помощью настраиваемого шаблона сообщений? Скрыть сообщения принадлежит нескольким категориям на главной странице wp_nav_menu не работает после стиля dequeuing CPT Эффективный способ отображения сообщений из разных категорий с помощью пользовательского запроса Как отключить поля в быстром редактировании продукта woocommerce? Загрузить 3 сообщения в слайде flexslider Пытаясь локализовать тему стартового разряда Underscores Условная структура постоянной ссылки Как заказать Комментарий по заголовку сообщения? Как ограничить страницы подменю плагина администратором / подписчиками? Пользовательское действие инициализации плагина, вызывающее общую медлительность

Как добавить роль арии и разметку схемы в пользовательский контейнер

Изменить: после выполнения некоторых исследований я обнаружил, что в функции wp_nav_menu используется следующий код для отображения значения контейнеров.

 if ( $args->container ) { /** * Filter the list of HTML tags that are valid for use as menu containers. * * @since 3.0.0 * * @param array $tags The acceptable HTML tags for use as menu containers. * Default is array containing 'div' and 'nav'. */ $allowed_tags = apply_filters( 'wp_nav_menu_container_allowedtags', array( 'div', 'nav' ) ); if ( is_string( $args->container ) && in_array( $args->container, $allowed_tags ) ) { $show_container = true; $class = $args->container_class ? ' class="' . esc_attr( $args->container_class ) . '"' : ' class="menu-'. $menu->slug .'-container"'; $id = $args->container_id ? ' id="' . esc_attr( $args->container_id ) . '"' : ''; $nav_menu .= '<'. $args->container . $id . $class . '>'; } } 

строки от 341 до 357 https://developer.wordpress.org/reference/functions/wp_nav_menu/

 $nav_menu .= '<'. $args->container . $id . $class . '>'; 

Вышеупомянутая строка касается вывода информации о контейнере. Теперь я пытаюсь выяснить, как изменить эту информацию в пользовательском классе walker, чтобы добавить дополнительные поля.

Конец редактирования

В настоящее время я пытаюсь добавить роли арии и разметку схемы в пользовательский ходок, который я создал.

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

 <nav class="" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement"> wp_nav_menu( $defaults ); </nav> 

В настоящее время мой вызов wp_nav_menu выглядит так.

 $defaults = array( 'menu' => '', 'menu_class' => '', 'menu_id' => '', 'container' => 'nav', 'container_class' => 'a-primarymenu', 'container_id' => '', 'before' => '', 'after' => '', 'link_before' => '', 'link_after' => '', 'depth' => 0, 'walker' => new Custom_Nav_Walker( 'a-primarymenu' ), 'theme_location' => 'primary', 'items_wrap' => '<ul>%3$s</ul>', ); wp_nav_menu( $defaults ); 

Класс контейнера, который я назначаю, передается в пользовательский класс walker и позволяет выводить мой вывод меню следующим образом.

 <nav class="a-primarymenu"> <ul> <li class="a-primarymenu__item"><a href="#link">Link</a></li> <li class="a-primarymenu__item"><a href="#link">Link</a></li> <li class="a-primarymenu__item"><a href="#link">Link</a></li> <li class="a-primarymenu__item"><a href="#link">Link</a></li> <li class="a-primarymenu__item"><a href="#link">Link</a></li> </ul> </nav> 

Мне нужна помощь, чтобы выяснить, как модифицировать вывод html контейнера

aka <nav class="a-primarymenu">

поэтому я могу добавить к элементу role="navigation" и itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement" .

Который тогда будет производить.

<nav class="a-primarymenu" role="navigation" itemscope="itemscope" itemtype="http://schema.org/SiteNavigationElement">

Самое близкое совпадение, которое я смог найти для этого желаемого результата, было https://core.trac.wordpress.org/ticket/35127, но это всего лишь запрос к ядру wordpress, а не модификатор ходунка.

Solutions Collecting From Web of "Как добавить роль арии и разметку схемы в пользовательский контейнер"