get_post_time( string $format = 'U', bool $gmt = false, int|WP_Post $post = null, bool $translate = false )
Retrieve the time at which the post was written.
Parameters
- $format
-
(string) (Optional) Format to use for retrieving the time the post was written. Accepts 'G', 'U', or PHP date format.
Default value: 'U'
- $gmt
-
(bool) (Optional) Whether to retrieve the GMT time.
Default value: false
- $post
-
(int|WP_Post) (Optional) WP_Post object or ID. Default is global
$post
object.Default value: null
- $translate
-
(bool) (Optional) Whether to translate the time string.
Default value: false
Return
(string|int|false) Formatted date string or Unix timestamp if $format
is 'U' or 'G'. False on failure.
Source
File: wp-includes/general-template.php
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 $time The formatted time.
* @param string $format Format to use for retrieving the time the post was written.
* Accepts 'G', 'U', or PHP date format. Default 'U'.
* @param bool $gmt Whether to retrieve the GMT time. Default false.
*/
return apply_filters( 'get_post_time', $time, $format, $gmt );
}
Changelog
Version | Description |
---|---|
2.0.0 | Introduced. |
© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/get_post_time