wp_get_nav_menus()
Получает массив (объектов) всех меню из базы данных.
Это обертка для функции get_terms(), которая получает данные терминов таксономии nav_menu.
Работает на основе: get_terms()
Хуки из функции
Возвращает
WP_Term[]. Массив, который содержит объекты с данными о каждом меню.
Использование
wp_get_nav_menus( $args );
- $args(массив)
Массив аргументов по которым будут получены меню. Какие аргументы можно передать смотрите в функции get_terms().
Значение параметра по умолчанию, когда в этом параметре ничего не установлено:
array( 'taxonomy' => 'nav_menu', 'hide_empty' => false, 'orderby' => 'name' );
По умолчанию: array()
Примеры
#1 Демонстрация работы функции
$menus = wp_get_nav_menus( $args ); print_r( $menus ); /* Вернет: Array ( [0] => stdClass Object ( [term_id] => 3 [name] => меню 1 [slug] => %d0%bc%d0%b5%d0%bd%d1%8e-1 [term_group] => 0 [term_taxonomy_id] => 3 [taxonomy] => nav_menu [description] => [parent] => 0 [count] => 1 ) [1] => stdClass Object ( [term_id] => 4 [name] => Меню 2 [slug] => %d0%bc%d0%b5%d0%bd%d1%8e-2 [term_group] => 0 [term_taxonomy_id] => 4 [taxonomy] => nav_menu [description] => [parent] => 0 [count] => 2 ) ) */
Список изменений
| С версии 3.0.0 | Введена. |
| С версии 4.1.0 | Default value of the 'orderby' argument was changed from 'none' to 'name'. |
Код wp_get_nav_menus() wp get nav menus WP 6.9.1
function wp_get_nav_menus( $args = array() ) {
$defaults = array(
'taxonomy' => 'nav_menu',
'hide_empty' => false,
'orderby' => 'name',
);
$args = wp_parse_args( $args, $defaults );
/**
* Filters the navigation menu objects being returned.
*
* @since 3.0.0
*
* @see get_terms()
*
* @param WP_Term[] $menus An array of menu objects.
* @param array $args An array of arguments used to retrieve menu objects.
*/
return apply_filters( 'wp_get_nav_menus', get_terms( $args ), $args );
}