wp_make_link_relative( string $link ): string

Converts full URL paths to absolute paths.

Description

Removes the http or https protocols and the domain. Keeps the path ‘/’ at the beginning, so it isn’t a true relative link, but from the web root base.

Parameters

$linkstringrequired
Full URL path.

Return

string Absolute path.

Source

function wp_make_link_relative( $link ) {
	return preg_replace( '|^(https?:)?//[^/]+(/?.*)|i', '$2', $link );
}

Changelog

VersionDescription
4.1.0Support was added for relative URLs.
2.1.0Introduced.

User Contributed Notes

  1. Skip to note 6 content

    Be aware that this function does not work as expected when a site uses a non-standard port.

    <?php
    echo wp_make_link_relative( 'http://localhost:8080/wp_test/sample-page/' );
    ?>

    will output

    :8080/wp_test/sample-page/

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