The network_site_url filter allows you to modify the network site URL in a WordPress multisite setup.
Usage
add_filter('network_site_url', 'your_custom_function', 10, 3);
function your_custom_function($url, $path, $scheme) {
// your custom code here
return $url;
}
Parameters
$url(string) – The complete network site URL, including the scheme and path.$path(string) – Path relative to the network site URL. Empty string if no path is specified.$scheme(string|null) – Scheme to give the URL context. Accepts ‘http’, ‘https’, ‘relative’, or null.
Examples
Force HTTPS for network site URL
add_filter('network_site_url', 'force_https_network_site_url', 10, 3);
function force_https_network_site_url($url, $path, $scheme) {
return set_url_scheme($url, 'https');
}
This code forces the network site URL to always use the HTTPS scheme.
Add a custom path to the network site URL
add_filter('network_site_url', 'add_custom_path_to_network_site_url', 10, 3);
function add_custom_path_to_network_site_url($url, $path, $scheme) {
return $url . '/custom-path';
}
This code appends a custom path /custom-path to the network site URL.
Modify the network site URL for a specific site
add_filter('network_site_url', 'modify_specific_site_network_site_url', 10, 3);
function modify_specific_site_network_site_url($url, $path, $scheme) {
if (get_current_blog_id() == 2) {
return 'https://example.com/custom-url';
}
return $url;
}
This code changes the network site URL to ‘https://example.com/custom-url‘ for the site with blog ID 2.
Remove the “www” subdomain from the network site URL
add_filter('network_site_url', 'remove_www_subdomain_from_network_site_url', 10, 3);
function remove_www_subdomain_from_network_site_url($url, $path, $scheme) {
return str_replace('://www.', '://', $url);
}
This code removes the “www” subdomain from the network site URL.
Change the URL scheme to relative
add_filter('network_site_url', 'set_relative_scheme_network_site_url', 10, 3);
function set_relative_scheme_network_site_url($url, $path, $scheme) {
return set_url_scheme($url, 'relative');
}
This code sets the URL scheme to relative, making the network site URL protocol-relative.