W3cubDocs

/WordPress

the_date( string $format = , string $before = , string $after = , bool $display = true ): string|void

Displays or retrieves the date the current post was written (once per date)

Description

Will only output the date if the current post’s date is different from the previous one output.

i.e. Only one date listing will show per day worth of posts shown in the loop, even if the function is called several times for each post.

HTML output can be filtered with ‘the_date’.
Date string output can be filtered with ‘get_the_date’.

Parameters

$formatstringoptional
PHP date format. Defaults to the 'date_format' option.

Default:''

$beforestringoptional
Output before the date.

Default:''

$afterstringoptional
Output after the date.

Default:''

$displaybooloptional
Whether to echo the date or return it.

Default:true

Return

string|void String if retrieving.

Source

function the_date( $format = '', $before = '', $after = '', $display = true ) {
	global $currentday, $previousday;

	$the_date = '';

	if ( is_new_day() ) {
		$the_date    = $before . get_the_date( $format ) . $after;
		$previousday = $currentday;
	}

	/**
	 * Filters the date a post was published for display.
	 *
	 * @since 0.71
	 *
	 * @param string $the_date The formatted date string.
	 * @param string $format   PHP date format.
	 * @param string $before   HTML output before the date.
	 * @param string $after    HTML output after the date.
	 */
	$the_date = apply_filters( 'the_date', $the_date, $format, $before, $after );

	if ( $display ) {
		echo $the_date;
	} else {
		return $the_date;
	}
}

Hooks

apply_filters( ‘the_date’, string $the_date, string $format, string $before, string $after )

Filters the date a post was published for display.

Changelog

Version Description
0.71 Introduced.

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