W3cubDocs

/WordPress

wp_get_nav_menus( array $args = array() ): WP_Term[]

Returns all navigation menu objects.

Parameters

$argsarrayoptional
Array of arguments passed on to get_terms() .
More Arguments from get_terms( … $args )Array or string of arguments. See WP_Term_Query::__construct() for information on accepted arguments.

Default:array()

Return

WP_Term[] An array of menu objects.

Source

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 );
}

Hooks

apply_filters( ‘wp_get_nav_menus’, WP_Term[] $menus, array $args )

Filters the navigation menu objects being returned.

Changelog

Version Description
4.1.0 Default value of the 'orderby' argument was changed from 'none' to 'name'.
3.0.0 Introduced.

© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_get_nav_menus