diff --git a/wp-admin/custom-navigation.php b/wp-admin/custom-navigation.php index 5e2c94a3d..53984620a 100644 --- a/wp-admin/custom-navigation.php +++ b/wp-admin/custom-navigation.php @@ -37,18 +37,26 @@ function wp_reset_nav_menu() { $messagesdiv = ''; $menu_id_in_edit = 0; +$updated = false; // Check which menu is selected and if menu is in edit already -if ( isset( $_POST['switch_menu'] ) ) +if ( isset( $_POST['switch_menu'] ) ) { $menu_selected_id = (int) $_POST['menu_select']; -elseif ( isset( $_POST['menu_id_in_edit'] ) ) + $updated = true; +} elseif ( isset( $_POST['menu_id_in_edit'] ) ) { $menu_selected_id = (int) $_POST['menu_id_in_edit']; -else +} else { $menu_selected_id = 0; +} +if ( isset( $_POST[ 'delete_menu' ] ) && $menu_selected_id > 0 ) { + wp_delete_nav_menu( $menu_selected_id ); + $menu_selected_id = 0; + $updated = true; +} // Default Menu to show $custom_menus = get_terms( 'nav_menu', array( 'hide_empty' => false ) ); -if ( !empty( $custom_menus ) ) +if ( ! $menu_selected_id && ! empty( $custom_menus ) ) $menu_selected_id = $custom_menus[0]->term_id; $menu_title = ''; @@ -64,6 +72,7 @@ if ( $menu_selected_id > 0 ) { if ( isset( $_POST['set_wp_menu'] ) ) { // @todo validate set_wp_menu update_option( 'wp_custom_nav_menu', $_POST['enable_wp_menu'] ); + $updated = true; $messagesdiv = '
' . __('Menu has been updated!') . '
' . __('Please enter a valid menu name.') . '
' . __('The menu could not be reset. Please try again.') . '