Как использовать get_the_date() для перевода формата даты на хинди

16 февр. 2017 г., 12:50:07
Просмотры: 16.2K
Голосов: 0

Я хочу отображать даты в формате хинди, например:

jan 10

используя функцию get_the_date(). Что я пробовал:

echo get_the_date(_e('F j'));

что выводит:

F jJanuary 10, 2017.
0
Все ответы на вопрос 4
2

Старый вопрос, но без принятого ответа, поэтому вот решение...

Вы получаете странный вывод, потому что _e просто выводит "F j" буквально, не передавая его в функцию. В результате вы получаете сырой формат, за которым следует формат даты по умолчанию.

Однако вам не нужно использовать никакую функцию перевода, потому что get_the_date() обрабатывает всё автоматически. Просто используйте:

<?php echo get_the_date('F j'); ?>

Переводы названий месяцев находятся в файлах перевода ядра WordPress. Если у вас есть перевод слова "Октябрь" на хинди и язык вашего сайта установлен как hi_IN, то будет отображаться переведённая дата.

Смотрите этот недавний похожий вопрос с более подробной информацией о параметре date_format.

19 окт. 2018 г. 11:43:01
Комментарии

это не работает для испанского

ValRob ValRob
19 февр. 2019 г. 17:43:01

Это работает для всех языков одинаково.

Tim Tim
19 февр. 2019 г. 19:50:43
3

Попробуйте следующий код.

echo get_the_date(__('M d'));

Вывод:

Фев 09

echo get_the_date(__('M d, Y'));

Вывод:

Фев 09, 2017

16 февр. 2017 г. 13:06:58
Комментарии

Это не работает на хинди. Вывод выглядит так: ???? 23

shubham shah shubham shah
16 февр. 2017 г. 13:19:43

Текст отображается на хинди, если вы выбрали хинди в качестве языка сайта (Консоль >> Настройки >> Общие)

AddWeb Solution Pvt Ltd AddWeb Solution Pvt Ltd
16 февр. 2017 г. 14:50:59

Но я хочу, чтобы на моем сайте были и английский, и хинди, когда пользователь нажимает на кнопку перевода языка. Проверьте URL: competitionmantra.com

shubham shah shubham shah
17 февр. 2017 г. 07:40:06
0

Функция WordPress date_i18n полезна для сайтов не на английском языке и при использовании нескольких языков/локалей. Подробнее можно узнать в справочнике кода WordPress здесь.

В вашем случае я бы попробовал:

<?php echo date_i18n( 'F j', strtotime( get_the_date() ) ); ?>

Надеюсь, это поможет.

19 окт. 2019 г. 14:12:53
0

Вы можете попробовать этот метод:

https://developer.wordpress.org/reference/functions/switch_to_locale/

Он позволяет изменить язык интерфейса на фронтенде

20 окт. 2019 г. 01:35:03