Получение времени последнего изменения поста в WordPress: функция get_the_modified_time()

Получение времени последнего изменения поста в WordPress

Функция get_the_modified_time() позволяет получить время, когда пост был последний раз изменён. Она работает аналогично функции get_the_modified_date().

Эта функция часто используется внутри цикла WordPress (The Loop). Если вы укажете параметр $d (формат отображения), то функция будет работать так же, как и get_the_modified_date().

Время выполнения

Функ��ия использует get_post_modified_time(), и время её выполнения:

  • 1 раз — 0.000164 секунды (быстро)
  • 50000 раз — 2.66 секунды (быстро)
  • PHP 7.0.8, WP 4.6.1

Хуки функции

Функция использует хук get_the_modified_time, который позволяет изменять время последнего изменения поста.

Возврат значения

Функция возвращает строку, целое число или false. Это может быть отформатированная дата или временная метка Unix. Если произошла ошибка, возвращается false.

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

get_the_modified_time( $d, $post );
  • $d (строка) — формат, который нужно использовать для получения времени изменения поста. Можно использовать 'G', 'U', или любой формат даты PHP. Полный список доступных форматов можно найти в документации.

    • По умолчанию: значение, указанное в настройках time_format.
  • $post (целое число/WP_Post) — ID поста или объект WP_Post, для которого нужно получить время публикации.

    • По умолчанию: текущий пост.

Примеры использования

Пример 1: Получение последней даты изменения поста

echo 'Пост был изменён: ' . get_the_modified_time(); //> 01:39

Пример 2: Получение последней даты изменения поста с пользовательским форматом

echo 'Пост был изменён: ' . get_the_modified_time('H:i:s'); //> 01:39:56

Пример 3: Добавление HTML-тегов к дате

Для того чтобы добавить HTML-теги к дате, нужно экранировать каждый символ тега с помощью обратной косой черты ``, чтобы избежать интерпретации символов как знаков формата даты:

echo 'Изменено: ' . get_the_modified_time('jM Y');
// Изменено: 25Dec 2011

Изменения в функции

  • С версии 2.0.0 функция была введена.
  • С версии 4.6.0 был добавлен параметр $post.

Код функции

Вот как выглядит исходный код функции get_the_modified_time:

function get_the_modified_time( $format = '', $post = null ) {
$post = get_post( $post );

if ( ! $post ) {
    // Для обратной совместимости ошибки проходят через фильтр ниже.
    $the_time = false;
} else {
    $_format = ! empty( $format ) ? $format : get_option( 'time_format' );

    $the_time = get_post_modified_time( $_format, false, $post, true );
}

/**
 * Фильтрует локализованное время, когда пост был последний раз изменён.
 *
 * @since 2.0.0
 * @since 4.6.0 Добавлен параметр $post.
 *
 * @param string|int|false $the_time Отформатированное время или false, если пост не найден.
 * @param string           $format   Формат для получения времени, когда пост был изменён. 
 *                                   Принимает 'G', 'U' или формат PHP даты.
 * @param WP_Post|null     $post     Объект WP_Post или null, если пост не найден.
 */
return apply_filters( 'get_the_modified_time', $the_time, $format, $post );

}

Связанные функции

  • get_the_modified_date()
  • the_modified_author()
  • the_modified_date()

Эти функции связаны с получением информации о времени и дате изменения постов, а также об авторе этих изменений и днях публикации.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *