WordPress at a glance
function is not described

clean_url() WP 1.2.0

Deprecated from version 3.0.0. It is no longer supported and can be removed in future releases. Use esc_url() instead.

Checks and cleans a URL.

A number of characters are removed from the URL. If the URL is for displaying (the default behaviour) ampersands are also replaced. The 'clean_url' filter is applied to the returned cleaned URL.

No Hooks.


String. The cleaned $url after the 'clean_url' filter is applied.


clean_url( $url, $protocols, $context );
$url(string) (required)
The URL to be cleaned.
An array of acceptable protocols.
How the URL will be used.
Default: 'display'


  • See: esc_url()


Since 1.2.0 Introduced.
Deprecated Since 3.0.0 Use esc_url()

Code of clean_url() WP 5.7

function clean_url( $url, $protocols = null, $context = 'display' ) {
	if ( $context == 'db' )
		_deprecated_function( 'clean_url( $context = \'db\' )', '3.0.0', 'esc_url_raw()' );
		_deprecated_function( __FUNCTION__, '3.0.0', 'esc_url()' );
	return esc_url( $url, $protocols, $context );