apply_filters( 'wp_nav_menu_args', array $args )
Filters the arguments used to display a navigation menu.
Contents
Description
See also
Parameters
-
$args
array -
Array of wp_nav_menu() arguments.
More Arguments from wp_nav_menu( ... $args )
Array of nav menu arguments.
menu
int|string|WP_TermDesired menu. Accepts a menu ID, slug, name, or object.
menu_class
stringCSS class to use for the ul element which forms the menu.
Default'menu'
.menu_id
stringThe ID that is applied to the ul element which forms the menu.
Default is the menu slug, incremented.container
stringWhether to wrap the ul, and what to wrap it with.
Default'div'
.container_class
stringClass that is applied to the container.
Default 'menu-{menu slug}-container'.container_id
stringThe ID that is applied to the container.container_aria_label
stringThe aria-label attribute that is applied to the container when it's a nav element.fallback_cb
callable|falseIf the menu doesn't exist, a callback function will fire.
Default is'wp_page_menu'
. Set to false for no fallback.before
stringText before the link markup.after
stringText after the link markup.link_before
stringText before the link text.link_after
stringText after the link text.echo
boolWhether to echo the menu or return it. Default true.depth
intHow many levels of the hierarchy are to be included.
0 means all. Default 0.
Default 0.walker
objectInstance of a custom walker class.theme_location
stringTheme location to be used. Must be registered with register_nav_menu() in order to be selectable by the user.items_wrap
stringHow the list items should be wrapped. Uses printf() format with numbered placeholders. Default is a ul with an id and class.item_spacing
stringWhether to preserve whitespace within the menu's HTML.
Accepts'preserve'
or'discard'
. Default'preserve'
.
More Information
The “wp_nav_menu_args” filter is applied to the arguments of the wp_nav_menu() function before they are processed.
This filter can be used in functions.php of a child theme to add/remove/modify the arguments of a menu defined in the parent theme.
Also, plugins can use this filter to change menus by adding classes/IDs or using a custom walker object.
Source
File: wp-includes/nav-menu-template.php
.
View all references
$args = apply_filters( 'wp_nav_menu_args', $args );
Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.
The following code will populate the “theme_location” option if it was not specified (or was left empty) in the initial call to “wp_nav_menu”.
Example migrated from Codex:
The Twenty Thirteen theme defines the following menu in its header.php file.
The following example code will add an ID to the container and change the “depth” to -1 so that links at all levels are displayed in a single, flat list.
The container ID will only show up if you set a menu for this theme location.