get_lastpostmodified()WP 1.2.0

Gets the date and time when the specified type of post was last edited.

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

Returns

String. The timestamp.

Usage

get_lastpostmodified( $timezone, $post_type );
$timezone(string)

The time zone for the timestamp. Can be:

  • server - internal server time. GMT + server time zone.
  • blog - uses the time from the post_modified field. GMT + site time zone.
  • gmt - uses the time from the post_modified_gmt field. GMT without offsets.

Default: 'server'

$post_type(string)
The name of the post type.
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.8.3

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 );
}