diff --git a/wp-admin/nav-menus.php b/wp-admin/nav-menus.php
index 8343d2f1a..e8c23ba24 100644
--- a/wp-admin/nav-menus.php
+++ b/wp-admin/nav-menus.php
@@ -241,16 +241,29 @@ switch ( $action ) {
check_admin_referer( 'delete-nav_menu-' . $nav_menu_selected_id );
if ( is_nav_menu( $nav_menu_selected_id ) ) {
+ $deleted_nav_menu = wp_get_nav_menu_object( $nav_menu_selected_id );
$delete_nav_menu = wp_delete_nav_menu( $nav_menu_selected_id );
if ( is_wp_error($delete_nav_menu) ) {
$messages[] = '
' . $delete_nav_menu->get_error_message() . '
';
} else {
$messages[] = '' . __('The menu has been successfully deleted.') . '
';
- $nav_menu_selected_id = 0; // Reset the selected menu
- unset($_REQUEST['menu']);
+ // Select the next available menu
+ $nav_menu_selected_id = 0;
+ $_nav_menus = wp_get_nav_menus( array('orderby' => 'name') );
+ foreach( $_nav_menus as $index => $_nav_menu ) {
+ if ( strcmp( $_nav_menu->name, $deleted_nav_menu->name ) >= 0
+ || $index == count( $_nav_menus ) - 1 ) {
+ $nav_menu_selected_id = $_nav_menu->term_id;
+ break;
+ }
+ }
}
- unset( $delete_nav_menu );
+ unset( $delete_nav_menu, $deleted_nav_menu, $_nav_menus );
+ } else {
+ // Reset the selected menu
+ $nav_menu_selected_id = 0;
+ unset( $_REQUEST['menu'] );
}
break;