Add a search form in WordPress navigation menu
To add a search form in WordPress navigation menu, we want to hook it into the wp_nav_menu_items
filter as a menu item.
We just want to add few lines of code in our theme’s / child theme’s functions.php
file.
add_filter( 'wp_nav_menu_items','add_search_box', 10, 2 );
function add_search_box( $items, $args ) {
$items .= '<li>' . get_search_form( false ) . '</li>';
return $items;
}
This code snippet will add WordPress default search form in our navigation menu.
If we have multiple WordPress menus, we can specify the menu we want to add a search form in this function.
add_filter( 'wp_nav_menu_items','add_search_box', 10, 2 );
function add_search_box( $items, $args ) {
if ( 'primary' == $args->theme_location )
$items .= '<li>' . get_search_form( false ) . '</li>';
return $items;
}
Now the search form will only be displayed in the menu theme location named as primary.
Got a project in mind? Send me a quick message, and I'll get back to you within 24 hours!.
Recent Posts
- Disabling Payment Methods in WooCommerce Based on Conditions
- How to Update Product Quantity in WooCommerce Using Custom Code
- Dynamically Generating a Table of Contents in WordPress
- Direct Checkout in WooCommerce - Add Product to Cart from Checkout Page & Skip Shop, Product, and Cart Pages
- Understanding the Impact of git reset --hard Command
Your Questions / Comments
If you found this article interesting, found errors, or just want to discuss about it, please get in touch.