Checks whether WordPress should replace old HTTP URLs to the site with their HTTPS counterpart.
Description
If a WordPress site had its URL changed from HTTP to HTTPS, by default this will return true
, causing WordPress to add frontend filters to replace insecure site URLs that may be present in older database content. The ‘wp_should_replace_insecure_home_url’ filter can be used to modify that behavior.
Source
function wp_should_replace_insecure_home_url() {
$should_replace_insecure_home_url = wp_is_using_https()
&& get_option( 'https_migration_required' )
// For automatic replacement, both 'home' and 'siteurl' need to not only use HTTPS, they also need to be using
// the same domain.
&& wp_parse_url( home_url(), PHP_URL_HOST ) === wp_parse_url( site_url(), PHP_URL_HOST );
/**
* Filters whether WordPress should replace old HTTP URLs to the site with their HTTPS counterpart.
*
* If a WordPress site had its URL changed from HTTP to HTTPS, by default this will return `true`. This filter can
* be used to disable that behavior, e.g. after having replaced URLs manually in the database.
*
* @since 5.7.0
*
* @param bool $should_replace_insecure_home_url Whether insecure HTTP URLs to the site should be replaced.
*/
return apply_filters( 'wp_should_replace_insecure_home_url', $should_replace_insecure_home_url );
}
Hooks
- apply_filters( ‘wp_should_replace_insecure_home_url’,
bool $should_replace_insecure_home_url ) Filters whether WordPress should replace old HTTP URLs to the site with their HTTPS counterpart.
Changelog
Version | Description |
---|---|
5.7.0 | Introduced. |
User Contributed Notes
You must log in before being able to contribute a note or feedback.