diff --git a/wp-includes/ms-settings.php b/wp-includes/ms-settings.php index 43724621a9..9022313e5d 100644 --- a/wp-includes/ms-settings.php +++ b/wp-includes/ms-settings.php @@ -59,9 +59,11 @@ if ( !isset( $current_site ) || !isset( $current_blog ) ) { if ( $current_blog ) wp_cache_set( 'current_blog_' . $domain, $current_blog, 'site-options' ); } - if ( $current_blog && $current_blog->site_id != $current_site->id ) + if ( $current_blog && $current_blog->site_id != $current_site->id ) { $current_site = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->site WHERE id = %d", $current_blog->site_id ) ); - else + if ( ! isset( $current_site->blog_id ) ) + $current_site->blog_id = $wpdb->get_var( $wpdb->prepare( "SELECT blog_id FROM $wpdb->blogs WHERE domain = %s AND path = %s", $current_site->domain, $current_site->path ) ); + } else $blogname = substr( $domain, 0, strpos( $domain, '.' ) ); } else { $blogname = htmlspecialchars( substr( $_SERVER[ 'REQUEST_URI' ], strlen( $path ) ) );