WordPress.org

Make WordPress Core

Ticket #25219: 25219.diff

File 25219.diff, 1.6 KB (added by iandunn, 6 years ago)
  • src/wp-admin/includes/update.php

     
    168168}
    169169
    170170function wp_plugin_update_rows() {
    171         if ( !current_user_can('update_plugins' ) )
     171        if ( !current_user_can('view_plugin_updates' ) )
    172172                return;
    173173
    174174        $plugins = get_site_transient( 'update_plugins' );
  • src/wp-includes/capabilities.php

     
    12171217                else
    12181218                        $caps[] = $cap;
    12191219                break;
     1220        case 'view_plugin_updates':
     1221        case 'view_theme_updates':
     1222        case 'view_core_updates':
     1223                if ( is_multisite() && ! is_super_admin( $user_id ) )
     1224                        $caps[] = 'do_not_allow';
     1225                else
     1226                        $caps[] = 'manage_options';
     1227                break;
    12201228        case 'activate_plugins':
    12211229                $caps[] = $cap;
    12221230                if ( is_multisite() ) {
  • src/wp-includes/update.php

     
    333333function wp_get_update_data() {
    334334        $counts = array( 'plugins' => 0, 'themes' => 0, 'wordpress' => 0 );
    335335
    336         if ( current_user_can( 'update_plugins' ) ) {
     336        if ( current_user_can( 'view_plugin_updates' ) ) {
    337337                $update_plugins = get_site_transient( 'update_plugins' );
    338338                if ( ! empty( $update_plugins->response ) )
    339339                        $counts['plugins'] = count( $update_plugins->response );