get_post_timestamp()WP 5.3.0

Получает время публикации или изменения поста в виде временной метки Unix (1270995315).

Эта функция получает временную метку Unix (без смещения часового пояса сайта).

Читайте также: Date/Time в WordPress.

Работает на основе: get_post_datetime()

Хуков нет.

Возвращает

int|false. Временная метка Unix при успехе, false при неудаче.

Использование

get_post_timestamp( $post, $field );
$post(int|WP_Post)
Объект WP_Post или ID поста.
По умолчанию: null (global $post)
$field(строка)

Какое поле базы данных использовать в качестве источника времени. Принимает:

  • date.
  • modified.

По умолчанию: 'date'

Примеры

1

#1 Демонстрация работы функции

$post_id = 31;
$time = get_post_timestamp( $post_id );             // int(1270995315)
$time = get_post_timestamp( $post_id, 'modified' ); // int(1629922365)

// можно передать объект поста:

$post = get_post( $post_id );
$time = get_post_timestamp( $post );             // int(1270995315)
$time = get_post_timestamp( $post, 'modified' ); // int(1629922365)
0

#2 Сравним разные варианты получения меток времени поста

$post = get_post( 31 );
$patt = "%s - %s - %s\n";
$mysql = 'Y-m-d H:i:s';

echo sprintf( $patt, strtotime( $post->post_date ),         $post->post_date,         'date'         );
echo sprintf( $patt, strtotime( $post->post_date_gmt ),     $post->post_date_gmt,     'date_gmt'     );
echo sprintf( $patt, strtotime( $post->post_modified ),     $post->post_modified,     'modified'     );
echo sprintf( $patt, strtotime( $post->post_modified_gmt ), $post->post_modified_gmt, 'modified_gmt' );

echo "\n\nget_post_timestamp()\n\n";

$unix_time     = get_post_timestamp( $post );
$unix_modified = get_post_timestamp( $post, 'modified' );

echo sprintf( $patt, $unix_time,     date( $mysql, $unix_time ),     'date'     );
echo sprintf( $patt, $unix_modified, date( $mysql, $unix_modified ), 'modified' );

Получим:

1271013315 - 2010-04-11 19:15:15 - date
1270998915 - 2010-04-11 15:15:15 - date_gmt
1629940365 - 2021-08-26 01:12:45 - modified
1629922365 - 2021-08-25 20:12:45 - modified_gmt

get_post_timestamp()

1270995315 - 2010-04-11 14:15:15 - date
1629922365 - 2021-08-25 20:12:45 - modified

Список изменений

С версии 5.3.0 Введена.

Код get_post_timestamp() WP 6.4.3

function get_post_timestamp( $post = null, $field = 'date' ) {
	$datetime = get_post_datetime( $post, $field );

	if ( false === $datetime ) {
		return false;
	}

	return $datetime->getTimestamp();
}