wordpress / latest / functions / domain_exists.html

domain_exists( string $domain, string $path, int $network_id = 1 ): int|null

Checks whether a site name is already taken.

Description

The name is the site’s subdomain or the site’s subdirectory path depending on the network settings.

Used during the new site registration process to ensure that each site name is unique.

Parameters

$domain string Required
The domain to be checked.
$path string Required
The path to be checked.
$network_id int Optional
Network ID. Relevant only on multi-network installations.

Default: 1

Return

int|null The site ID if the site name exists, null otherwise.

Source

File: wp-includes/ms-functions.php. View all references

function domain_exists( $domain, $path, $network_id = 1 ) {
	$path   = trailingslashit( $path );
	$args   = array(
		'network_id'             => $network_id,
		'domain'                 => $domain,
		'path'                   => $path,
		'fields'                 => 'ids',
		'number'                 => 1,
		'update_site_meta_cache' => false,
	);
	$result = get_sites( $args );
	$result = array_shift( $result );

	/**
	 * Filters whether a site name is taken.
	 *
	 * The name is the site's subdomain or the site's subdirectory
	 * path depending on the network settings.
	 *
	 * @since 3.5.0
	 *
	 * @param int|null $result     The site ID if the site name exists, null otherwise.
	 * @param string   $domain     Domain to be checked.
	 * @param string   $path       Path to be checked.
	 * @param int      $network_id Network ID. Relevant only on multi-network installations.
	 */
	return apply_filters( 'domain_exists', $result, $domain, $path, $network_id );
}

Hooks

Uses

Uses Description

Changelog

Version Description
MU (3.0.0) Introduced.

© 2003–2022 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/domain_exists