wp_get_referer()

Retrieve referer from ‘_wp_http_referer’ or HTTP referer.

Description

If it’s the same as the current request URL, will return false.

Return

(string|false) Referer URL on success, false on failure.

More Information

HTTP referer is a server variable. ‘referer’ is deliberately misspelled.

If page “refered” (form posted) to itself, returns false (because $_SERVER[‘HTTP_REFERER’] == $_REQUEST[‘_wp_http_referer’])

Source

File: wp-includes/functions.php

function wp_get_referer() {
	if ( ! function_exists( 'wp_validate_redirect' ) ) {
		return false;
	}

	$ref = wp_get_raw_referer();

	if ( $ref && wp_unslash( $_SERVER['REQUEST_URI'] ) !== $ref && home_url() . wp_unslash( $_SERVER['REQUEST_URI'] ) !== $ref ) {
		return wp_validate_redirect( $ref, false );
	}

	return false;
}

Changelog

Version Description
2.0.4 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_get_referer