# Получение даты комментария в WordPress (GET_COMMENT_DATE())
Функция get_comment_date() позволяет получить дату текущего комментария. Это полезно, если вы хотите вывести дату комментария в нужном формате на вашем сайте.
## Как это работает?
Функция использует внутреннюю функцию mysql2date() для преобразования даты из базы данных в удобный формат.
### Хуки
Функция использует следующий хук:
- get_comment_date — позволяет изменять дату комментария перед выводом.
## Возвращаемое значение
Функция возвращает строку, содержащую дату комментария.
## Использование
```php
get_comment_date( $format, $comment_id );
Параметры
$format(string): Формат даты в PHP. Опционально. По умолчанию используется формат, указанный в настройках WordPress.$comment_id(int|WP_Comment): ID комментария или объектWP_Comment, для которого нужно получить дату. По умолчанию используется текущий комментарий.
Примеры использования
Пример 1: Получение даты комментария в заданном формате
$format = 'l, F jS, Y'; // Формат для даты
$comment_ID = 25; // ID комментария
$comment_date = get_comment_date( $format, $comment_ID );
echo $comment_date; // Например, "Wednesday, November 6, 2013"
Пример 2: Читаемая дата комментария
Создадим функцию, которая будет выводить время комментария в удобочитаемом формате:
function smk_get_comment_time( $comment_id = 0 ){
return sprintf(
_x( '%s ago', 'Human-readable time', 'text-domain' ),
human_time_diff(
get_comment_date( 'U', $comment_id ),
current_time( 'timestamp' )
)
);
}
// Пример вызова
echo smk_get_comment_time( 25 ); // Например: "1 min ago"
Пример 3: Разные форматы даты
// Выводит что-то вроде: Monday 8th of August 2005
echo get_comment_date( 'l jS of F Y' );
// Выводит что-то вроде: Mon Mar 8 2012
echo get_comment_date( 'D M j Y' );
// Выводит 07/08/2017 (dd/mm/yyyy)
echo get_comment_date( 'd/m/Y' );
Краткий обзор функций, связанных с датой и временем
comment_date()— выводит дату комментария.comment_time()— выводит время комментария.current_time()— возвращает текущее время.date_i18n()— форматирует дату с учетом локализации.get_comment_time()— получает время комментария.
История изменений
- С версии 1.5.0 — функция была введена.
- С версии 4.4.0 — добавлена возможность передавать объект
WP_Commentв качестве параметр��$comment_id.
Код функции
Ниже представлен код функции get_comment_date() из файла wp-includes/comment-template.php:
function get_comment_date( $format = '', $comment_id = 0 ) {
$comment = get_comment( $comment_id );
$_format = ! empty( $format ) ? $format : get_option( 'date_format' );
$comment_date = mysql2date( $_format, $comment->comment_date );
/**
* Фильтрует возвращаемую дату комментария.
*
* @since 1.5.0
*
* @param string|int $comment_date Форматированная дата или Unix timestamp.
* @param string $format Формат даты в PHP.
* @param WP_Comment $comment Объект комментария.
*/
return apply_filters( 'get_comment_date', $comment_date, $format, $comment );
}