{% comment %} This include allows to translate the days and months in the date by using strings in _data/date-locales/[lang].yml This include can be called with three parameters: - include.date: the date to be processed - include.format: the date format. (If empty a default format will be used) - include.lang: lang to use for translation. {% endcomment %} {% comment %} If the parameter date format is empty the default format set in _config.yml is used. If there is no default in _config, "%b %-d, %Y" is used. {% endcomment %} {% assign date_format_to_be_translated = include.format | default: site.date_format | default: "%b %-d, %Y" %} {% comment %} Init to have the indice of the day in the week (num_day) and the indice of the month in the year (num_mont) Init the lang parameter depending if it's set in the include call, in the page or in the site settings {% endcomment %} {% assign num_day = include.date | date: "%w" | plus: 0 %} {% assign num_month = include.date | date: "%-m" | plus: -1 %} {% assign lang = include.lang | default: page.lang | default: site.lang %} {% comment %} Use translated abbreviated weekday if "%a" is used in the format and the translation is available in _data/date-locales/[lang].yml {% endcomment %} {% if site.data.date-locales[lang].abbreviated_weekday[num_day] %} {% assign date_format_to_be_translated = date_format_to_be_translated | replace: "%a", site.data.date-locales[lang].abbreviated_weekday[num_day] %} {% endif %} {% comment %} Use translated full weekday if "%A" is used in the format and the translation is available in _data/date-locales/[lang].yml {% endcomment %} {% if site.data.date-locales[lang].full_weekday[num_day] %} {% assign date_format_to_be_translated = date_format_to_be_translated | replace: "%A", site.data.date-locales[lang].full_weekday[num_day] %} {% endif %} {% comment %} Use translated abbreviated month if "%b" is used in the format and the translation is available in _data/date-locales/[lang].yml {% endcomment %} {% if site.data.date-locales[lang].abbreviated_month[num_month] %} {% assign date_format_to_be_translated = date_format_to_be_translated | replace: "%b", site.data.date-locales[lang].abbreviated_month[num_month] %} {% endif %} {% comment %} Use translated abbreviated weekday if "%B" is used in the format and the translation is available in _data/date-locales/[lang].yml {% endcomment %} {% if site.data.date-locales[lang].full_month[num_month] %} {% assign date_format_to_be_translated = date_format_to_be_translated | replace: "%B", site.data.date-locales[lang].full_month[num_month] %} {% endif %} {{ include.date | date: date_format_to_be_translated | strip }}