Home › Forums › Back End › Rearranging the WordPress admin menu › Reply To: Rearranging the WordPress admin menu
December 9, 2013 at 7:01 am
#157994
Participant
I found the solution!
This little addition to the functions.php file removes the “nav-menu.php” link from appearance and adds it to the top level and moves it up under comments.
function remove_submenus() {
global $submenu;
unset($submenu['themes.php'][10]); // Removes Menu
}
add_action('admin_menu', 'remove_submenus');
function new_nav_menu () {
global $menu;
$menu[99] = array('', 'read', 'separator', '', 'menu-top menu-nav');
add_menu_page(__('Navigation', 'mav-menus'), __('Navigation', 'nav-menus'), 'edit_themes', 'nav-menus.php', '', '', 99);
}
add_action('admin_menu', 'new_nav_menu');
function custom_menu_order($menu_ord) {
if (!$menu_ord) return true;
return array(
'index.php', // Dashboard
'edit.php', // Posts
'upload.php', // Media
'edit.php?post_type=page', // Pages
'edit-comments.php', // Comments
'link-manager.php', // Links
'separator1', // First separator
'nav-menus.php', // Navigation
'separator2', // Second separator
'themes.php', // Appearance
'plugins.php', // Plugins
'users.php', // Users
'tools.php', // Tools
'options-general.php', // Settings
'separator-last', // Last separator
);
}
add_filter('custom_menu_order', 'custom_menu_order'); // Activate custom_menu_order
add_filter('menu_order', 'custom_menu_order');