get_post_modified_time() WP 2.0.0

Отримує час, коли запис було змінено. За промовчанням отримує штамп часу Unix, але можна вказати будь-який формат.

Ця функція використовується в інших функціях та є основою. Найчастіше краще використовувати функцію-обгортку замість цієї.

Працює на основі:
mysql2date()
1 раз – 0.00003 сек
(дуже швидко) | 50000 разів – 0.34 сек
(дуже швидко) |
PHP 7.0.8, WP 4.6.1

Хуки з функції

Повертає

Строку|int|false. Дату у вказаному форматі або Unix штамп, якщо $id дорівнює ‘U’ або ‘G’. False при невдачі.

Використання

get_post_modified_time($d, $gmt, $post, $translate);
$d
(рядок)
Формат, у якому потрібно отримати дату або час зміни запису.
Можливі формати .


За замовчуванням: ‘U’
$gmt
(логічний)
true – отримати GMT час, false – час сайту.


Типово: false
$post
(число/WP_Post)
ID або об’єкт запису, час якого потрібно отримати.


Типово: null (поточний запис)
$translate
(логічний)
Чи потрібно перекладати вказаний формат. Перекладаються рядки начебто. November, Saturday.


Типово: false

Приклади

0

#1 Приклади показують, що виводить функція

echo get_post_modified_time(); //> 1472693996

echo get_post_modified_time('j MY'); //> 1 Sep 2016

echo get_post_modified_time('jM Y', 0, null, 'переклад'); //> 1 Вер 2016

echo get_post_modified_time('H:i:s'); //> 01:39:56

список змін

З версії 2.0.0Введено.

Код get_post_modified_time() WP 6.0.2

function get_post_modified_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, 'modified', $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 localized time a post був останнім modified.
	 *
	 * @ Since 2.8.0
	 *
	 * @param string|int $time Formatted date string або Unix timestamp if `$format` is 'U' or 'G'.
	 * @param string $format Формат для використання, щоб змінити час, коли він був змінений.
	 * Accepts 'G', 'U', або PHP date format. Default 'U'.
	 * @param bool $gmt Whether to retrieve the GMT time. Default false.
	 */
	return apply_filters( 'get_post_modified_time', $time, $format, $gmt);
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *