wp_date()
Отримує локалізовану дату (перекладену поточною мовою) з переданої мітки часу unix.
Ця функція є обгорткою для функції PHP date() .
Якщо у виведеній даті використовується формат із місяцем або тижнем у вигляді рядка, то функція спробує перевести їх на поточну мову. В інших випадках – це аналог date() у PHP.
Це нова функція, призначена для заміни date_i18n() .
Цій функції, на відміну від date_i18n() , потрібно передавати мітку часу Unix, без додавання до неї зсуву часової зони сайту.
Зсув тимчасової зони додається автоматично всередині функції на основі третього параметра $timezone , в якому можна вказати довільне зсув тимчасової зони.
У зв’язку із запровадженням у версії 5.3 нового API для роботи з часом:
Не рекомендується:
НЕ отримуйте час як мітка
WP timestamps
(мітка часу + зсув часу сайту):НЕ локалізуйте час/дату функцією:
НЕ зберігайте на постійній основі
WP timestamps
.НЕ порівнюйте
WP timestamp'ы
.- НЕ змінюйте тимчасову зону PHP за допомогою функції date_default_timezone_set() – це важлива вимога для правильної роботи ядра.
Рекомендується:
Отримуйте час як
Unix timestamp
(мітка часу Unix без зсуву) або як об’єкт DateTimeImmutable :Локалізуйте час/дату, базуючись на Unix timestamp:
Зберігайте
Unix timestamps
або формати, які точно вказують час, наприклад DATE_RFC3339 .Порівнюйте мітки часу Unix, DateTimeImmutable об’єкти або строкові дати в єдиній часовій зоні.
- Використовуйте об’єкти: DateTimeZone та DateTimeImmutable з функцією wp_date(), коли потрібно обробити час у часовій зоні, яка відрізняється від зони сайту).
Хуки з функції
Повертає
Строку|false
. Перекладена дата. False коли введено неправильну мітку часу.
Використання
wp_date($format, $timestamp, $timezone);
-
$format
(рядок) (обов’язковий) -
Формат у якому виводитиме дату, приклад:
F j, Y
– Листопад 6, 2010.
Повний список форматів . Як формат можна використовувати опцію
get_option( ‘date_format’ ) , яка задається в розділі “Налаштування”. -
$timestamp
(число) -
Мітка часу Unix, з якої буде отримана дата у вказаному форматі. За промовчанням використовується поточна позначка
time() .
За замовчуванням: null – (time() – current UNIX time) -
$timezone
(DateTimeZone) -
Тимчасова зона, яка буде накладена на вказану позначку часу. За промовчанням
wp_timezone() .
За замовчуванням: null (поточна часова зона з опцій сайту)
Приклади
#1 Локалізація php функції date() у WordPress
Поточний час:
$format = 'j FYH:i:s'; echo wp_date($format); // 24 березня 2021 08:12:07 (час сайту = +5 годин) echo date_i18n($format); // 24 березня 2021 08:12:07 (час сайту = +5 годин) echo date($format); // 24 March 2021 03:12:07 (UTC час)
Вказаний час:
echo wp_date( 'j FYH:i:s', 0 ); // 1 січня 1970 06:00:00 echo wp_date( 'j MYH:i:s', strtotime('1999-11-15') ); // 15 Лис 1999 05:00:00 (час сайту = +5 годин) echo wp_date( 'j MYH:i:s', strtotime('1999-11-15'), new DateTimeZone('UTC') ); // 15 Лис 1999 00:00:00 (UTC час)
нотатки
- Global. WP_Locale. $wp_locale WordPress date and time locale object.
список змін
З версії 5.3.0 | Введено. |