From dad44082a7aee49e4093a45594cfe36e04b5e73a Mon Sep 17 00:00:00 2001 From: Scott Taylor Date: Sun, 30 Nov 2014 19:17:44 +0000 Subject: [PATCH] The menu items for `users.php` and `profile.php` that require the `promote_users` cap should be wrapped in an `is_multisite()` conditional a la `user-new.php`. Props SergeyBiryukov. Fixes #30526. git-svn-id: https://develop.svn.wordpress.org/trunk@30659 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-admin/menu.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/wp-admin/menu.php b/src/wp-admin/menu.php index fc0fb8d5bb..89c13d9684 100644 --- a/src/wp-admin/menu.php +++ b/src/wp-admin/menu.php @@ -206,19 +206,21 @@ else if ( current_user_can('list_users') ) { $_wp_real_parent_file['profile.php'] = 'users.php'; // Back-compat for plugins adding submenus to profile.php. $submenu['users.php'][5] = array(__('All Users'), 'list_users', 'users.php'); - if ( current_user_can('create_users') ) + if ( current_user_can( 'create_users' ) ) { $submenu['users.php'][10] = array(_x('Add New', 'user'), 'create_users', 'user-new.php'); - else + } elseif ( is_multisite() ) { $submenu['users.php'][10] = array(_x('Add New', 'user'), 'promote_users', 'user-new.php'); + } $submenu['users.php'][15] = array(__('Your Profile'), 'read', 'profile.php'); } else { $_wp_real_parent_file['users.php'] = 'profile.php'; $submenu['profile.php'][5] = array(__('Your Profile'), 'read', 'profile.php'); - if ( current_user_can('create_users') ) + if ( current_user_can( 'create_users' ) ) { $submenu['profile.php'][10] = array(__('Add New User'), 'create_users', 'user-new.php'); - else + } elseif ( is_multisite() ) { $submenu['profile.php'][10] = array(__('Add New User'), 'promote_users', 'user-new.php'); + } } $menu[75] = array( __('Tools'), 'edit_posts', 'tools.php', '', 'menu-top menu-icon-tools', 'menu-tools', 'dashicons-admin-tools' );