get_lastpostmodified()WP 1.2.0

Get the timestamp of the last time any post was modified.

The server timezone is the default and is the difference between GMT and server time. The 'blog' value is just when the last post was modified. The 'gmt' is when the last post was modified in GMT time.

1 time — 0.027198 sec (extremely slow) | 50000 times — 0.80 sec (very fast) | PHP 7.0.5, WP 4.4.2

Return

String. The timestamp in 'Y-m-d H:i:s' format, or false on failure.

Usage

get_lastpostmodified( $timezone, $post_type );
$timezone(string)
The timezone for the timestamp. See get_lastpostdate() for information on accepted values.
Default: 'server'
$post_type(string)
The post type to check.
Default: 'any'

Examples

0

#1 Demo

echo get_lastpostmodified( 'server', 'any' );
// output: 2016-04-05 17:56:29.000000

echo get_lastpostmodified( 'blog', 'post' );
// output: 2016-03-05 01:46:44

echo get_lastpostmodified( 'gmt', 'post' );
// output: 2016-03-04 20:46:44

Changelog

Since 1.2.0 Introduced.
Since 4.4.0 The $post_type argument was added.

get_lastpostmodified() code WP 6.7.2

function get_lastpostmodified( $timezone = 'server', $post_type = 'any' ) {
	/**
	 * Pre-filter the return value of get_lastpostmodified() before the query is run.
	 *
	 * @since 4.4.0
	 *
	 * @param string|false $lastpostmodified The most recent time that a post was modified,
	 *                                       in 'Y-m-d H:i:s' format, or false. Returning anything
	 *                                       other than false will short-circuit the function.
	 * @param string       $timezone         Location to use for getting the post modified date.
	 *                                       See get_lastpostdate() for accepted `$timezone` values.
	 * @param string       $post_type        The post type to check.
	 */
	$lastpostmodified = apply_filters( 'pre_get_lastpostmodified', false, $timezone, $post_type );

	if ( false !== $lastpostmodified ) {
		return $lastpostmodified;
	}

	$lastpostmodified = _get_last_post_time( $timezone, 'modified', $post_type );
	$lastpostdate     = get_lastpostdate( $timezone, $post_type );

	if ( $lastpostdate > $lastpostmodified ) {
		$lastpostmodified = $lastpostdate;
	}

	/**
	 * Filters the most recent time that a post on the site was modified.
	 *
	 * @since 2.3.0
	 * @since 5.5.0 Added the `$post_type` parameter.
	 *
	 * @param string|false $lastpostmodified The most recent time that a post was modified,
	 *                                       in 'Y-m-d H:i:s' format. False on failure.
	 * @param string       $timezone         Location to use for getting the post modified date.
	 *                                       See get_lastpostdate() for accepted `$timezone` values.
	 * @param string       $post_type        The post type to check.
	 */
	return apply_filters( 'get_lastpostmodified', $lastpostmodified, $timezone, $post_type );
}