Filters the HTML list content for navigation menus.
Description
See also
Parameters
$items
string- The HTML list content for the menu items.
$args
stdClass- An object containing 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'
.
Source
$items = apply_filters( 'wp_nav_menu_items', $items, $args );
Changelog
Version | Description |
---|---|
3.0.0 | Introduced. |
Add HTML5 search form to a menu
Add this code to functions.php. You can completely modify the output, and style the form as you want.
Please, don’t forget to replace the theme_location !
For example, if the id of my menu was main-menu, I would write
if( $args->theme_location == 'main-menu' )
Hope this will help.
get_search_form()
function like this:$items .= get_search_form( false );
The false parameter is the echo. False return the markup as you can see in the docs of the function itselfAdd extra menu item to a WordPress Nav Menu
Using this code snippet, one can add an additional menu item to the end of a WordPress navigation menu. For example, here in this case I am adding a WooCommerce Login/Register link when a user is not logged in, and a My Account page link when a user is logged in.
How to use the above code?
Hope this helps someone :)
Used the following snippet to add a user avatar image as the last menu item. Had to use
$args->menu==='main-menu'
rather than'primary'
or id, as other examples did. Found this out finally by printing out$args->menu
to the navbar, to see what that argument actually was.