A WordPress developers guide / tutorial – for adding custom menu in new wordpress theme, add one or multiple new theme locations for the custom WordPress menus, so that menu can appear in those places. Register new menu items. Enable your new wordpress theme to add custom user defined nav menus from the admin dashboard.
Prerequisite : To follow this tutorial you need access to the PHP files of your theme & you need to edit them. Also you need to access the ADMIN DASHBOARD of your WordPress installation in local pc or online.
How to add theme locations for your navigation menus in WordPress
In your theme’s functions.php file, add the following code to generate menu locations / theme locations. You will be able to see the Manage Locations tab only after adding the following lines in functions.php file of your newly created theme folder.
function register_my_menu() { register_nav_menus( array( 'the-main-navigation-menu' => __( 'The Main Navigation Menu' ), 'the-nav-menu-2' => __( 'Secondary Navigation Menu' ), 'the-nav-menu-3' => __( 'Third Navigation Menu' ) ) ); } add_action( 'init', 'register_my_menu' );
Then the following theme locations will be added which you can visit by clicking the WordPress Dashboard Menu (Appearance -> Menus) -> Manage Locations TAB.
Observer that the theme location in the above image shows 3 lines “The Main Navigation Menu”, “Secondary Navigation Menu”… which you have just added in functions.php file mentioned above.
Then click on EDIT MENUS tab and goto the end of the page below the MENU STRUCTURE and MENU SETTINGS, and the theme locations added will be shown. Picture shown below-
Cross Checking- delete the MANAGE LOCATIONS tab
Now just delete the lines you have just added in functions.php file (or comment the lines in PHP file). Then again login to the WordPress Dashboard & follow the WordPress Dashboard Menu (Appearance -> Menus) you will not see the Manage Locations Tab. Picture shown below..
How to delete the manage locations tab in WordPress Menu in dashboard.
Only EDIT MENUS tab will be shown. And in that tab below the MENU STRUCTURE and MENU SETTINGS heading no theme locations will be shown.
Reference Reading:
- A very good tutorial HERE :
http://premium.wpmudev.org/blog/add-menus-to-wordpress/ - WP Navigation Menu Creation Guide by Justin Tadlock : Click Here
- Read related pages in WordPress codex : Nav Menu
- Codex Function Reference : register_nav_menu() , register_nav_menus(),wp_nav_menu() , is_nav_menu()
- To learn WordPress in Kolkata click here