Intereting Posts
как использовать php-запрос в AJAX jquery Эхо-теги с выражением if и отображения php внутри IF? Иерархическая таксономия в структуре постоянных ссылок Виджет-условный виджет post_prev & post_next в пределах одной категории Рекомендуемый способ загрузки / вставки родительской и дочерней таблиц стилей для включения кэширования Как сортировать сообщения внутри категорий Получить полную страницу HTML для непубличной страницы WordPress Пользовательская таксономия направлена ​​на ежегодный архив Как разрешить удаление прав на редактирование роли пользователя Пользовательский метабокс не отображает данные мультиселекта в режиме редактирования Как получить URL-адрес изображения из медиа-библиотеки функции разбиения на страницы не работают Как отображать описания категорий WooCommerce на каждой странице категории без отображения описания родительской категории? Удалить / заменить теги img в опубликованном сообщении для опубликованных сообщений

wp nav menu: добавить атрибуты в пункты меню

Я пытаюсь выяснить, можно ли прикрепить атрибут к пункту меню wp nav.
Чтобы продемонстрировать, этот php:

<?php wp_nav_menu(array( 'menu' => 'main', 'container' => false )); ?> 

выведет меню так:

 <ul id="menu-main" class="menu"> <li id="menu-item-01" class="menu-item">Menu 01</li> <li id="menu-item-02" class="menu-item">Menu 02</li> <li id="menu-item-03" class="menu-item">Menu 03</li> <li id="menu-item-04" class="menu-item">Menu 04</li> </ul> 

но мне действительно понравилось что-то вроде этого:

 <ul id="menu-main" class="menu"> <li id="menu-item-01" class="menu-item" data-hook="01">Menu 01</li> <li id="menu-item-02" class="menu-item" data-hook="02">Menu 02</li> <li id="menu-item-03" class="menu-item" data-hook="03">Menu 03</li> <li id="menu-item-04" class="menu-item" data-hook="04">Menu 04</li> </ul> 

Этого можно достичь? Атрибут не должен быть data-hook Я просто использую это как пример, просто что-то, что я могу использовать в качестве идентификатора.

Вы можете использовать Custom Walker для добавления атрибутов к пунктам меню.

В принципе, вы добавляете параметр «walker» в параметры wp_nav_menu () и вызываете экземпляр расширенного класса:

 wp_nav_menu( array ( 'menu' => 'main-menu', 'container' => FALSE, 'container_id' => FALSE, 'menu_class' => '', 'menu_id' => FALSE, 'depth' => 1, 'walker' => new Description_Walker ) ); 

Класс Description_Walker расширяет Walker_Nav_Menu и изменяет функцию start_el( &$output, $item, $depth, $args ) .

  1. Из Кодекса:
    http://codex.wordpress.org/Function_Reference/wp_nav_menu#Using_a_Custom_Walker_Function

  2. Я нашел этот учебник, вы можете найти его очень полезным:
    http://www.kriesi.at/archives/improve-your-wordpress-navigation-menu-output