WordPress.org

Make WordPress Core

Ticket #14479: capabilities-super_user_filter.diff

File capabilities-super_user_filter.diff, 901 bytes (added by benward, 5 years ago)

Adds 'is_super_user' filter to 'is_super_user()' function.

  • wordpress/wp-includes/capabilities.php

     
    12041204 * @return bool True if the user is a site admin. 
    12051205 */ 
    12061206function is_super_admin( $user_id = false ) { 
     1207        $is_super = false; 
     1208 
    12071209        if ( ! $user_id ) { 
    12081210                $current_user = wp_get_current_user(); 
    12091211                $user_id = ! empty($current_user) ? $current_user->id : 0; 
     
    12171219        if ( is_multisite() ) { 
    12181220                $super_admins = get_super_admins(); 
    12191221                if ( is_array( $super_admins ) && in_array( $user->user_login, $super_admins ) ) 
    1220                         return true; 
     1222                        $is_super = true; 
    12211223        } else { 
    12221224                if ( $user->has_cap('delete_users') ) 
    1223                         return true; 
     1225                        $is_super = true; 
    12241226        } 
    12251227 
    1226         return false; 
     1228        return apply_filters('is_super_admin', $is_super, $user); 
    12271229} 
    12281230 
    12291231?>