是否可以在 Liquid 或 Jekyll 中的日期格式中添加月份后缀?例如:1 月 23 日或 5 月 18 日。
我已经提到了Shopify 维基,但我很惊讶地发现那里没有格式。当然应该有这么简单的事情吗? :/
Liquid 模板引擎Jekylluse 不提供开箱即用的排序功能(例如,将“1”变为“1st”,将“3”变为“3rd”)。但是,可以使用过滤器和标签来提供该功能。下面的代码片段生成月份中的日期并附加一个标准化字符串。它还删除该月前 9 天的前导零。
{% assign d = page.date | date: "%-d" %}
{% case d %}
{% when "1" or "21" or "31" %}{{ d }}st
{% when "2" or "22" %}{{ d }}nd
{% when "3" or "23" %}{{ d }}rd
{% else %}{{ d }}th
{% endcase %}
对于包含月、日和年的完整日期,请使用:
{% assign d = page.date | date: "%-d" %}
{{ page.date | date: "%B" }}
{% case d %}{% when "1" or "21" or "31" %}{{ d }}st{% when "2" or "22" %}{{ d }}nd{% when "3" or "23" %}{{ d }}rd{% else %}{{ d }}th{% endcase %},
{{ page.date | date: "%Y" }}
产生如下输出:
September 21st, 2013
注意:代码被分成多行,以便于阅读。它在 HTML 中渲染得很好,但在源代码中会有额外的空白。如果这让您烦恼,只需将所有内容移至一行即可。
如果您对其他日期格式选项感兴趣,我将创建此参考:Jekyll(和 GitHub 页面)液体日期格式示例
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)