为LomotiveCMS中的变量指定自定义字段日期



我试图为一个变量分配一个日期,目的是分解布局。也许有更好的方法可以做到这一点,所以可以随意推荐替代方案。

我有一个news_items模型,其中有一个名为news_date的日期字段。每当遇到新的一年,我想浏览每个模型条目,并开始一个新的部分。我的计划很基本:

{% assign curYear = "" %}
{% for news in contents.news_items %}
  {% assign prevYear = curYear %}  
  {% assign curYear = news.news_date.year %} <-- this does not work
  {% if prevYear != curYear %}
    <h1>Press Releases for {{ news.news_date | format_date: '%Y' }}</h1>
  {% endif %}
  <p>{{curYear}}</p> <-- this is always empty
  <p>{{news.content}}</p>
{% endfor %}

我尝试了各种其他语法,比如Time.parseTime(news.news_date).year,但似乎不能在Liquid中执行任意Ruby。有什么方法可以实现我想要的吗?

感谢您的帮助!

多亏了谷歌小组中一位乐于助人的人,capture标签被指出给了我,它将原本会在页面上输出的东西捕获到一个变量中:

而不是这样(或者我用assign尝试的各种迭代):

{% assign curYear = news.news_date.year %} 

利用了format_date滤波器:,这一操作效果非常好

{% capture curYear %} {{ news.news_date | format_date: '%Y' }} {% endcapture %}

相关内容

  • 没有找到相关文章

最新更新