mpi*_*tas 18 liquid date-formatting jekyll
我正在尝试jekyll进行网站创建.我正在使用jekyll-bootstrap.
默认配置具有页面存档,其中列出的所有帖子按发布日期的年份和月份分组.目前这几个月用英文出现.我查看了代码,这是一个负责提交日期的摘录:
{% capture this_month %}{{ post.date | date: "%B" }}{% endcapture %}
Run Code Online (Sandbox Code Playgroud)
我在这里找到了很多信息,因此有一种方法可以指定所需的语言环境.但你怎么能让杰奎尔尊重呢?简单地添加
default_locale: "lt"
Run Code Online (Sandbox Code Playgroud)
在_config.yml自然不起作用.
Kle*_*off 19
您可以使用Liquid Date Format覆盖当前月份:
{% assign m = page.date | date: "%-m" %}
{{ page.date | date: "%-d" }}
{% 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 %}
{{ page.date | date: "%Y" }}
Run Code Online (Sandbox Code Playgroud)
如果您的日期是,例如2015-02-20,则输出将是 20 Februar 2015
Bri*_*ice 11
因为国际化是不可用在github的网页,我建立在回答 @Kleo佩特罗夫和的回答 @Falc的,我成立了一个办法让在YAML文件中定义的区域名称的日期:
没有整个case语句,代码几乎相同:
{% capture i18n_date %}
{{ page.date | date: "%-d" }}
{% assign m = page.date | date: "%-m" | minus: 1 %}
{{ site.data.fr.months[m] }}
{{ page.date | date: "%Y" }}
{% endcapture %}
Run Code Online (Sandbox Code Playgroud)
我在上面的代码中设置了以下数据结构(可能在_config.yml或在某个_data/some.yml文件中),该文件是_data/fr.yml:
months:
- Janvier
- Février
- Mars
- Avril
- Mai
- Juin
- Juillet
- Aout
- Septembre
- Octobre
- Novembre
- Décembre
Run Code Online (Sandbox Code Playgroud)
需要注意的是page.date | date: "%-m"输出月份数字为字符串,即六月号实际上是"6"没有6,液体静静地蒙上该字符串为数字时,管道的minus filter.
During development it was not something I was aware and thus liquid didn't returned anything when passing米with the value "6" tosite.data.fr.months [M]`,我只在看FALC时看到的伎俩回答.
小智 5
轮到我分享我的解决方案,没有以前的灵感来自插件:我创建了一个包含一些参数,如: {% translated_date.html ... %}
我们的想法是使用日期过滤器语法(例如:"%A%-d%B%Y")来翻译与格式相关的月份和日期名称.用于转换的字符串位于yaml文件存储区中_data.
repo oncleben31/jekyll-date-basic-i18n上提供的代码和用法.
我的博客中的集成示例与repo oncleben31/oncleben31-cc中提供的Jekyll源代码相关.看看布局post.html和home.html.
| 归档时间: |
|
| 查看次数: |
7648 次 |
| 最近记录: |