# date_i18n()

URL: https://chugunov.pro/api-wordpress/functions/date_i18n/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 0.71.

## Сигнатура

```php
date_i18n( string $format, int|bool $timestamp_with_offset = false, bool $gmt = false ): string
```

## Описание

Если локаль задаёт название месяца и дня недели, то формат даты определяется локалью. Если нет, то вместо этого используется строка формата даты.
Обратите внимание: поскольку WP обычно формирует сумму метки времени и смещения с помощью strtotime(), подразумевается смещение, добавленное к текущему моменту, а не к моменту, который представляет метка времени. Хранение таких меток времени или их иной расчёт приведёт к некорректному выводу.

## Параметры

- `$format` `string` — обязательный. Формат отображения даты.
- `$timestamp_with_offset` `int|bool` — необязательный, по умолчанию `false`. Сумма метки времени Unix и смещения часового пояса в секундах.
- `$gmt` `bool` — необязательный, по умолчанию `false`. Использовать ли часовой пояс GMT. Применяется, только если метка времени не указана.

## Возвращаемое значение

`string`

## Исходный код

Файл: `wp-includes/functions.php:179`

```php
function date_i18n( $format, $timestamp_with_offset = false, $gmt = false ) {
	$timestamp = $timestamp_with_offset;

	// If timestamp is omitted it should be current time (summed with offset, unless `$gmt` is true).
	if ( ! is_numeric( $timestamp ) ) {
		// phpcs:ignore WordPress.DateTime.CurrentTimeTimestamp.Requested
		$timestamp = current_time( 'timestamp', $gmt );
	}

	/*
	 * This is a legacy implementation quirk that the returned timestamp is also with offset.
	 * Ideally this function should never be used to produce a timestamp.
	 */
	if ( 'U' === $format ) {
		$date = $timestamp;
	} elseif ( $gmt && false === $timestamp_with_offset ) { // Current time in UTC.
		$date = wp_date( $format, null, new DateTimeZone( 'UTC' ) );
	} elseif ( false === $timestamp_with_offset ) { // Current time in site's timezone.
		$date = wp_date( $format );
	} else {
		/*
		 * Timestamp with offset is typically produced by a UTC `strtotime()` call on an input without timezone.
		 * This is the best attempt to reverse that operation into a local time to use.
		 */
		$local_time = gmdate( 'Y-m-d H:i:s', $timestamp );
		$timezone   = wp_timezone();
		$datetime   = date_create( $local_time, $timezone );
		$date       = wp_date( $format, $datetime->getTimestamp(), $timezone );
	}

	/**
	 * Filters the date formatted based on the locale.
	 *
	 * @since 2.8.0
	 *
	 * @param string $date      Formatted date string.
	 * @param string $format    Format to display the date.
	 * @param int    $timestamp A sum of Unix timestamp and timezone offset in seconds.
	 *                          Might be without offset if input omitted timestamp but requested GMT.
	 * @param bool   $gmt       Whether to use GMT timezone. Only applies if timestamp was not provided.
	 */
	$date = apply_filters( 'date_i18n', $date, $format, $timestamp, $gmt );

	return $date;
}
```

## История изменений

- 5.3.0 — Converted into a wrapper for wp_date() .
- 0.71 — Introduced.

## Связанные

Использует: [`wp_date`](https://chugunov.pro/api-wordpress/functions/wp_date/), [`wp_timezone`](https://chugunov.pro/api-wordpress/functions/wp_timezone/), [`current_time`](https://chugunov.pro/api-wordpress/functions/current_time/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).
Используется в: `WP_Application_Passwords_List_Table::column_created`, `WP_Application_Passwords_List_Table::column_last_used`, [`wp_user_personal_data_exporter`](https://chugunov.pro/api-wordpress/functions/wp_user_personal_data_exporter/), `WP_Privacy_Policy_Content::privacy_policy_guide`, [`wp_privacy_send_personal_data_export_email`](https://chugunov.pro/api-wordpress/functions/wp_privacy_send_personal_data_export_email/), `WP_Privacy_Requests_Table::get_timestamp_as_date`, `WP_Community_Events::format_event_data_time`, [`heartbeat_autosave`](https://chugunov.pro/api-wordpress/functions/heartbeat_autosave/), [`wp_dashboard_recent_posts`](https://chugunov.pro/api-wordpress/functions/wp_dashboard_recent_posts/), [`wp_ajax_date_format`](https://chugunov.pro/api-wordpress/functions/wp_ajax_date_format/), [`wp_ajax_time_format`](https://chugunov.pro/api-wordpress/functions/wp_ajax_time_format/), [`wp_ajax_wp_fullscreen_save_post`](https://chugunov.pro/api-wordpress/functions/wp_ajax_wp_fullscreen_save_post/), [`wp_prepare_revisions_for_js`](https://chugunov.pro/api-wordpress/functions/wp_prepare_revisions_for_js/), [`post_submit_meta_box`](https://chugunov.pro/api-wordpress/functions/post_submit_meta_box/), [`attachment_submit_meta_box`](https://chugunov.pro/api-wordpress/functions/attachment_submit_meta_box/), [`wp_get_archives`](https://chugunov.pro/api-wordpress/functions/wp_get_archives/), [`wp_widget_rss_output`](https://chugunov.pro/api-wordpress/functions/wp_widget_rss_output/), [`wp_post_revision_title`](https://chugunov.pro/api-wordpress/functions/wp_post_revision_title/), [`wp_post_revision_title_expanded`](https://chugunov.pro/api-wordpress/functions/wp_post_revision_title_expanded/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/date_i18n/
