wp_update_urls_to_https() WordPress Function

The wp_update_urls_to_https() function changes all of the URLs on a WordPress site to HTTPS. This is useful for sites that are moving from HTTP to HTTPS, or for sites that are being served over both protocols.

wp_update_urls_to_https() #

Update the ‘home’ and ‘siteurl’ option to use the HTTPS variant of their URL.


Description

If this update does not result in WordPress recognizing that the site is now using HTTPS (e.g. due to constants overriding the URLs used), the changes will be reverted. In such a case the function will return false.


Top ↑

Return

(bool) True on success, false on failure.


Top ↑

Source

File: wp-includes/https-migration.php

function wp_update_urls_to_https() {
	// Get current URL options.
	$orig_home    = get_option( 'home' );
	$orig_siteurl = get_option( 'siteurl' );

	// Get current URL options, replacing HTTP with HTTPS.
	$home    = str_replace( 'http://', 'https://', $orig_home );
	$siteurl = str_replace( 'http://', 'https://', $orig_siteurl );

	// Update the options.
	update_option( 'home', $home );
	update_option( 'siteurl', $siteurl );

	if ( ! wp_is_using_https() ) {
		// If this did not result in the site recognizing HTTPS as being used,
		// revert the change and return false.
		update_option( 'home', $orig_home );
		update_option( 'siteurl', $orig_siteurl );
		return false;
	}

	// Otherwise the URLs were successfully changed to use HTTPS.
	return true;
}


Top ↑

Changelog

Changelog
VersionDescription
5.7.0Introduced.

The content displayed on this page has been created in part by processing WordPress source code files which are made available under the GPLv2 (or a later version) license by theĀ Free Software Foundation. In addition to this, the content includes user-written examples and information. All material is subject to review and curation by the WPPaste.com community.