Как изменить язык отображения даты регистрации пользователя в WordPress?

Как изменить функцию `getUserRegDate()`, чтобы вместо вывода даты на английском языке (March 23, 2024), дата выводилась на русском языке?
  • 7 мая 2024 г. 11:50
Ответы на вопрос 4
Для изменения языка отображения даты регистрации пользователя в WordPress на русский язык, следует использовать функцию `date_i18n()` вместо стандартной `date()`.

Пример функции `getUserRegDate()` с изменением языка на русский:

```php
function getUserRegDate($user_id) {
    $user = get_userdata($user_id);
    $reg_date = $user->user_registered;
    
    $localized_date = date_i18n('j F Y', strtotime($reg_date)); // Формат "день месяц год"
    
    return $localized_date;
}
```

Теперь при вызове этой функции вместо даты "March 23, 2024" будет выводиться дата на русском языке в формате "23 марта 2024".
$datetime = new DateTime($user_reg);
+ $formatter = new IntlDateFormatter('ru_RU');
+ $formatter->setPattern('d MMM, Y');

- echo $datetime->format('F j, Y');
+ echo $formatter->format($datetime);


Должен быть установлен модуль php-intl
Возможно, кому-то пригодится 
function getUserRegDate() {
$user = get_userdata(get_current_user_id());
$user_reg = $user->get('user_registered');
$datetime = new DateTime($user_reg);
$formatter = new IntlDateFormatter(
    'ru_RU',
    IntlDateFormatter::LONG,
    IntlDateFormatter::LONG
);
$formatter->setPattern('d MMMM, yyyy');
echo $formatter->format($datetime);
}
Тут жестко задан формат: 
echo $datetime->format('F j, Y');
Если хотите указать более общий вид, то задайте "d.m.Y".
Похожие вопросы