Ticket #42091: 42091.2.diff
File 42091.2.diff, 1.3 KB (added by , 7 years ago) |
---|
-
src/wp-includes/ms-blogs.php
70 70 } 71 71 72 72 /** 73 * Retrieves a site s ID given its (subdomain or directory) slug.73 * Retrieves a site's ID given its (subdomain or directory) slug. 74 74 * 75 75 * @since MU (3.0.0) 76 76 * @since 4.7.0 Converted to use get_sites(). 77 * @since 4.9.0 Converted to use get_site_by(). 77 78 * 78 79 * @param string $slug A site's slug. 79 80 * @return int|null The site ID, or null if no site is found for the given slug. 80 81 */ 81 82 function get_id_from_blogname( $slug ) { 82 $current_network = get_network(); 83 $slug = trim( $slug, '/' ); 83 $result = get_site_by( 'slug', $slug ); 84 84 85 if ( is_subdomain_install() ) { 86 $domain = $slug . '.' . preg_replace( '|^www\.|', '', $current_network->domain ); 87 $path = $current_network->path; 88 } else { 89 $domain = $current_network->domain; 90 $path = $current_network->path . $slug . '/'; 91 } 92 93 $site_ids = get_sites( array( 94 'number' => 1, 95 'fields' => 'ids', 96 'domain' => $domain, 97 'path' => $path, 98 ) ); 99 100 if ( empty( $site_ids ) ) { 85 if ( ! $result ) { 101 86 return null; 102 87 } 103 88 104 return array_shift( $site_ids );89 return $result->id; 105 90 } 106 91 107 92 /**