diff --git a/wp-admin/includes/class-wp-ms-themes-list-table.php b/wp-admin/includes/class-wp-ms-themes-list-table.php index 76a2b038db..e57697a5c2 100644 --- a/wp-admin/includes/class-wp-ms-themes-list-table.php +++ b/wp-admin/includes/class-wp-ms-themes-list-table.php @@ -58,7 +58,8 @@ class WP_MS_Themes_List_Table extends WP_List_Table { $current = get_site_transient( 'update_themes' ); foreach ( (array) $themes['all'] as $key => $theme ) { - if ( array_key_exists( $theme['Template'], $allowed_themes ) ) { + $theme_key = esc_html( $theme['Stylesheet'] ); + if ( isset( $allowed_themes [ $theme_key ] ) ) { $themes['all'][$key]['enabled'] = true; $themes['enabled'][$key] = $themes['all'][$key]; } diff --git a/wp-admin/network/themes.php b/wp-admin/network/themes.php index 2d11663d45..f64b5addaf 100644 --- a/wp-admin/network/themes.php +++ b/wp-admin/network/themes.php @@ -23,7 +23,7 @@ if ( $action ) { $allowed_themes = get_site_option( 'allowedthemes' ); switch ( $action ) { case 'network-enable': - $allowed_themes[ $_GET['theme'] ] = 1; + $allowed_themes[ $_GET['theme'] ] = true; update_site_option( 'allowedthemes', $allowed_themes ); wp_redirect( wp_get_referer() ); // @todo add_query_arg for update message exit; @@ -41,7 +41,7 @@ if ( $action ) { exit; } foreach( (array) $themes as $theme ) - $allowed_themes[ $theme ] = 1; + $allowed_themes[ $theme ] = true; update_site_option( 'allowedthemes', $allowed_themes ); break; case 'network-disable-selected':