Create menu and fill with links
programatically create a navigation menu and pre add custom links with this WordPress code snippet.
/** * Snippet Name: Create menu and fill with links * Snippet URL: https://wpcustoms.net/snippets/create-menu-and-fill-with-links/ */ function wpc_pre_add_menus() { register_nav_menus( array( 'main_nav' =--> 'The main menu',) ); $new_menu_id = wp_create_nav_menu('Main Menu'); $page_args = array( 'menu-item-object-id' => 1, 'menu-item-object' => 'page', 'menu-item-parent-id' => 0, 'menu-item-type' => 'post_type', 'menu-item-title' => 'A cool Link Title', 'menu-item-status' => 'publish', ); if ( $new_menu_id > 0 ) { // set our new MENU up at our theme's nav menu location set_theme_mod( 'nav_menu_locations' , array( 'main_nav' => $new_menu_id ) ); // add a menu item to that new menu wp_update_nav_menu_item( $new_menu_id , 0, $page_args ); } } add_action( 'init', 'wpc_pre_add_menus' );