WordPress.org

Make WordPress Core

Ticket #18910: ms-blogs.php.patch

File ms-blogs.php.patch, 1.3 KB (added by MarcusPope, 6 years ago)

Patch for get_blog_details function

  • www/wp-includes/ms-blogs.php

    diff -r 657482482ccf www/wp-includes/ms-blogs.php
    a b  
    127127        if ( is_array($fields ) ) { 
    128128                if ( isset($fields['blog_id']) ) { 
    129129                        $blog_id = $fields['blog_id']; 
    130                 } elseif ( isset($fields['domain']) && isset($fields['path']) ) { 
     130                } elseif ( ! is_subdomain_install() && isset($fields['path']) ) { 
    131131                        $key = md5( $fields['domain'] . $fields['path'] ); 
    132132                        $blog = wp_cache_get($key, 'blog-lookup'); 
    133133                        if ( false !== $blog ) 
    134134                                return $blog; 
    135                         if ( substr( $fields['domain'], 0, 4 ) == 'www.' ) { 
    136                                 $nowww = substr( $fields['domain'], 4 ); 
    137                                 $blog = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->blogs WHERE domain IN (%s,%s) AND path = %s ORDER BY CHAR_LENGTH(domain) DESC", $nowww, $fields['domain'], $fields['path'] ) ); 
    138                         } else { 
    139                                 $blog = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->blogs WHERE domain = %s AND path = %s", $fields['domain'], $fields['path'] ) ); 
    140                         } 
     135                        $blog = $wpdb->get_row( $wpdb->prepare( "SELECT * FROM $wpdb->blogs WHERE path = %s", $fields['path'] ) ); 
    141136                        if ( $blog ) { 
    142137                                wp_cache_set($blog->blog_id . 'short', $blog, 'blog-details'); 
    143138                                $blog_id = $blog->blog_id;