wp_get_nocache_headers()WP 2.8.0

Gets the HTTP header information to prevent caching.

The several different headers cover the different ways cache prevention is handled by different browsers or intermediate caches such as proxy servers.

Hooks from the function

Returns

Array. The associative array of header names and field values.

Usage

wp_get_nocache_headers();

Changelog

Since 2.8.0 Introduced.
Since 6.3.0 The Cache-Control header for logged in users now includes the no-store and private directives.
Since 6.8.0 The Cache-Control header now includes the no-store and private directives regardless of whether a user is logged in.

wp_get_nocache_headers() code WP 6.8.1

function wp_get_nocache_headers() {
	$cache_control = 'no-cache, must-revalidate, max-age=0, no-store, private';

	$headers = array(
		'Expires'       => 'Wed, 11 Jan 1984 05:00:00 GMT',
		'Cache-Control' => $cache_control,
	);

	if ( function_exists( 'apply_filters' ) ) {
		/**
		 * Filters the cache-controlling HTTP headers that are used to prevent caching.
		 *
		 * @since 2.8.0
		 *
		 * @see wp_get_nocache_headers()
		 *
		 * @param array $headers Header names and field values.
		 */
		$headers = (array) apply_filters( 'nocache_headers', $headers );
	}
	$headers['Last-Modified'] = false;
	return $headers;
}