X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/699231ae09f7057a4d0000cdf32e50a3df6a04ca..58f607a1de715c9bca69340a4d6fb9e1b9c2bed2:/wp-includes/capabilities.php diff --git a/wp-includes/capabilities.php b/wp-includes/capabilities.php index 6ab08e37..3773b4a8 100644 --- a/wp-includes/capabilities.php +++ b/wp-includes/capabilities.php @@ -728,7 +728,7 @@ class WP_User { $caps = call_user_func_array( 'map_meta_cap', $args ); // Multisite super admin has all caps by definition, Unless specifically denied. - if ( is_multisite() && is_super_admin() ) { + if ( is_multisite() && is_super_admin( $this->ID ) ) { if ( in_array('do_not_allow', $caps) ) return false; return true; @@ -812,7 +812,7 @@ function map_meta_cap( $cap, $user_id ) { // Fall through case 'edit_users': // If multisite these caps are allowed only for super admins. - if ( is_multisite() && !is_super_admin() ) + if ( is_multisite() && !is_super_admin( $user_id ) ) $caps[] = 'do_not_allow'; else $caps[] = 'edit_users'; // Explicit due to primitive fall through @@ -991,7 +991,7 @@ function map_meta_cap( $cap, $user_id ) { $caps[] = 'read_private_pages'; break; case 'unfiltered_upload': - if ( defined('ALLOW_UNFILTERED_UPLOADS') && ALLOW_UNFILTERED_UPLOADS && ( !is_multisite() || is_super_admin() ) ) + if ( defined('ALLOW_UNFILTERED_UPLOADS') && ALLOW_UNFILTERED_UPLOADS && ( !is_multisite() || is_super_admin( $user_id ) ) ) $caps[] = $cap; else $caps[] = 'do_not_allow'; @@ -1028,7 +1028,7 @@ function map_meta_cap( $cap, $user_id ) { case 'delete_user': case 'delete_users': // If multisite these caps are allowed only for super admins. - if ( is_multisite() && !is_super_admin() ) + if ( is_multisite() && !is_super_admin( $user_id ) ) $caps[] = 'do_not_allow'; else $caps[] = $cap; @@ -1112,7 +1112,7 @@ function author_can( $post, $capability ) { $author = new WP_User( $post->post_author ); - if ( empty( $author ) ) + if ( empty( $author->ID ) ) return false; $args = array_slice( func_get_args(), 2 );