Функція wp_get_nav_menu_items()
Отримує елементи меню навігації у вигляді масиву, який потім можна обробити.
Повертає всі елементи (посилання) зазначеного меню навігації, яке створюється в панелі: “зовнішній вигляд” > “Меню” (Appearance > Menus).
Передавши назву, ID або складаючи меню, функція отримає елементи меню навігації.
Повертає
Масив даних про посилання.
Використання
1 |
<? php wp_get_nav_menu_items ($ menu, $ args); ?> |
Шаблон використання
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$ Menu = 5; $ Args = array ( 'Order' => 'ASC' , 'Orderby' => 'menu_order' , 'Post_type' => 'nav_menu_item' , 'Post_status' => 'publish' , 'Output' => ARRAY_A , 'Output_key' => 'menu_order' , 'Nopaging' => true , 'Update_post_term_cache' => false ); $ Items = wp_get_nav_menu_items ($ menu, $ args); |
$ Menu (рядок) (обов’язковий)
ID меню.
Ідентифікатор, який задається при реєстрації меню (menu location) – вказувати не можна.
За замовчуванням: немає
$ Args (масив)
Аргументи у вигляді масиву, які формують виводяться дані.
За замовчуванням: за замовчуванням
Приклади
Приклад побудови простого списку меню з використанням функції wp_get_nav_menu_items ():
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
// Отримаємо елементи меню на основі параметра $ menu_name (теж що і 'theme_location' або 'menu' в аргументах wp_nav_menu) // Цей код - основа функції wp_nav_menu, де виходить ID меню з слагу $ Menu_name = 'custom_menu_slug'; if ($ locations = get_nav_menu_locations () && isset ($ locations [$ menu_name])) { $ Menu = wp_get_nav_menu_object ($ locations [$ menu_name]); // Отримуємо ID $ Menu_items = wp_get_nav_menu_items ($ menu-> term_id); // Отримуємо елементи по ID // Створюємо список $ Menu_list = '<ul id = "menu-'. $ Menu_name. '">'; foreach ((array) $ menu_items as $ key => $ menu_item) { $ Menu_list. = '<Li> <a href="'. $menu_item-> Url.' "> '. $ Menu_item-> title. '</a> </ Li>'; } $ Menu_list. = '</ Ul>'; } Else $ Menu_list = '<ul> <li> Меню "'. $ Menu_name. '" Не визначене. </ Li> </ ul>'; |