1

我想使用下面的代码在我的 Jekyll 网站中显示自定义日期

{% assign m = page.date | date: "%-m" %}
{% case m %}
{% when '1' %}Januar
{% when '2' %}Februar
{% when '3' %}März
{% when '4' %}April
{% when '5' %}Mai
{% when '6' %}Juni
{% when '7' %}Juli
{% when '8' %}August
{% when '9' %}September
{% when '10' %}Oktober
{% when '11' %}November
{% when '12' %}Dezember
{% endcase %}

但我现在不知道把它放在哪里(我在 post.html 中试过但不起作用)

4

1 回答 1

1

我为此做了一个模板。此模板将日期翻译为特定语言。这里是法语,但可以随意更改月份日期数组。该模板可用于文章/页面的枚举(例如:索引页面)或文章/页面模板。

在枚举中使用时,需要传递日期进行处理

{% for post in site.posts %}
  <li>
    <span class="post-date">{% include custom_date_full_fr.html date = post.date %}</span>
    <a class="post-link" href="{{ post.url | prepend: site.baseurl }}">{{ post.title }}</a>
  </li>
{% endfor %}

在页面/帖子模板中使用时,您只需包含模板,因为 page.date 已经可用。

{% include custom_date_full_fr.html %}

custom_date_full_fr.html

{% if include.date %}
    {% assign processed_date = include.date %}
{% else if page.date  %}
    {% assign processed_date = page.date %}
{% endif %}

{% comment %}-------- Test if we have a date to process --------{% endcomment %}
{% if processed_date %}

    {% assign month = "janvier,février,mars,avril,mai,juin,juillet,août,septembre,octobre,novembre,décembre" | split: "," %}

    {% comment %}------ Note : sunday is the first day in this array -------{% endcomment %}
    {% assign day = "dimanche,lundi,mardi,mercredi,jeudi,vendredi,samedi" | split: "," %}

    {% assign month_index = processed_date | date: "%m" | minus: 1 %}

    {%comment%}----------------------------------------------
    Here **minus: 0** is a trick to convert day_index from string to integer and then use it as an array index.
    ----------------------------------------------{%endcomment%}
    {% assign day_index = processed_date | date: "%w" | minus: 0 %}

    {%comment%}-------- Output the date ----------{%endcomment%}
    {{ day[day_index] }} {{ processed_date | date: "%d" }} {{ month[month_index] }} {{ processed_date | date: "%Y" }}
{% endif %}

请参阅此处了解更多信息:

于 2015-02-09T13:38:06.060 回答