57 lines
2.6 KiB
HTML
57 lines
2.6 KiB
HTML
|
{% 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 }}
|