Retrieves the time at which the post was written.
Parameters
$format
stringoptional- Format to use for retrieving the time the post was written. Accepts
'G'
,'U'
, or PHP date format. Default'U'
.Default:
'U'
$gmt
booloptional- Whether to retrieve the GMT time.
Default:
false
$post
int|WP_Postoptional- Post ID or post object. Default is global
$post
object.Default:
null
$translate
booloptional- Whether to translate the time string.
Default:
false
Source
function get_post_time( $format = 'U', $gmt = false, $post = null, $translate = false ) {
$post = get_post( $post );
if ( ! $post ) {
return false;
}
$source = ( $gmt ) ? 'gmt' : 'local';
$datetime = get_post_datetime( $post, 'date', $source );
if ( false === $datetime ) {
return false;
}
if ( 'U' === $format || 'G' === $format ) {
$time = $datetime->getTimestamp();
// Returns a sum of timestamp with timezone offset. Ideally should never be used.
if ( ! $gmt ) {
$time += $datetime->getOffset();
}
} elseif ( $translate ) {
$time = wp_date( $format, $datetime->getTimestamp(), $gmt ? new DateTimeZone( 'UTC' ) : null );
} else {
if ( $gmt ) {
$datetime = $datetime->setTimezone( new DateTimeZone( 'UTC' ) );
}
$time = $datetime->format( $format );
}
/**
* Filters the localized time a post was written.
*
* @since 2.6.0
*
* @param string|int $time Formatted date string or Unix timestamp if `$format` is 'U' or 'G'.
* @param string $format Format to use for retrieving the time the post was written.
* Accepts 'G', 'U', or PHP date format.
* @param bool $gmt Whether to retrieve the GMT time.
*/
return apply_filters( 'get_post_time', $time, $format, $gmt );
}
Hooks
- apply_filters( ‘get_post_time’,
string|int $time ,string $format ,bool $gmt ) Filters the localized time a post was written.
Changelog
Version | Description |
---|---|
2.0.0 | Introduced. |
For a complete list of date/time formatting options, the ‘PHP date format’ is available from the PHP.net reference website.