get_the_date() for translating date format

I want to display dates in Hindi format like

jan 10

using get_the_date() function. What I have tried so far:

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

which outputs:

F jJanuary 10, 2017.

Topic localization translation date-time Wordpress

Category Web


You can try this method:

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

It allows you to changed the frontend language


The WordPress date_i18n function comes in handy for none english sites and when using multiple languages/locales. You can find more info on the WordPress code reference here.

In your case, I would try:

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

Hope this helps.


Old question, but no answer accepted, so here goes..

You get weird output, because _e just prints "F j" literally and isn't passing it to the function. Hence you get the raw format followed by the default date format.

However, you don't need to use any translation function, because get_the_date() handles it all. Just do:

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

Translations of the months are in the WordPress core translation files. If you have a translation of "October" in Hindi and have your site language set to hi_IN it will display the translated date.

See this recent, similar question with some more detail on the date_format option.


Try below code.

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

Output:

Feb 09

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

Output:

Feb 09, 2017

About

Geeks Mental is a community that publishes articles and tutorials about Web, Android, Data Science, new techniques and Linux security.