get_blog_id_from_url( string $domain, string $path = '/' ): int

Gets a blog’s numeric ID from its URL.

Description

On a subdirectory installation like example.com/blog1/, $domain will be the root ‘example.com’ and $path the subdirectory ‘/blog1/’. With subdomains like blog1.example.com, $domain is ‘blog1.example.com’ and $path is ‘/’.

Parameters

$domainstringrequired
Website domain.
$pathstringoptional
Not required for subdomain installations. Default '/'.

Default:'/'

Return

int 0 if no blog found, otherwise the ID of the matching blog.

Source

function get_blog_id_from_url( $domain, $path = '/' ) {	$domain = strtolower( $domain );	$path = strtolower( $path );	$id = wp_cache_get( md5( $domain . $path ), 'blog-id-cache' );	if ( -1 === $id ) { // Blog does not exist.	return 0;	} elseif ( $id ) {	return (int) $id;	}	$args = array(	'domain' => $domain,	'path' => $path,	'fields' => 'ids',	'number' => 1,	'update_site_meta_cache' => false,	);	$result = get_sites( $args );	$id = array_shift( $result );	if ( ! $id ) {	wp_cache_set( md5( $domain . $path ), -1, 'blog-id-cache' );	return 0;	}	wp_cache_set( md5( $domain . $path ), $id, 'blog-id-cache' );	return $id; } 

Changelog

VersionDescription
MU (3.0.0)Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.