You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在HUGO中按日期字段对JSON数据进行倒序排列的实现咨询

Hugo按JSON日期字段排序渲染事件列表方案

你可以通过Hugo内置的time.Parse函数先将字符串格式的日期转换为时间类型,再基于转换后的时间做降序排序即可实现需求,修改后的页面代码如下:

<div class="row listrecent">
  <!-- 先处理日期转换生成带解析后日期的事件数组 -->
  {{ $sortedEvents := slice }}
  {{ range .Site.Data.appearances.events }}
    <!-- 此处第一个参数为日期格式模板,对应你当前的月/日/年格式,若实际为日/月/年可改为"02/1/2006" -->
    {{ $parsedDate := time.Parse "1/02/2006" .date }}
    {{ $eventWithParsedDate := merge . (dict "parsedDate" $parsedDate) }}
    {{ $sortedEvents = $sortedEvents | append $eventWithParsedDate }}
  {{ end }}
  <!-- 按解析后的日期降序排序,最新事件排在最前 -->
  {{ range sort $sortedEvents "parsedDate" "desc" }}
    {{- partial "list-partials/appearancebox.html" . -}}
  {{ end }}
</div>

说明

  • 日期解析模板遵循Go语言的时间参考规则,使用固定参考时间2006年1月2日的对应格式来匹配你的日期字符串结构,可根据你实际的日期格式灵活调整。
  • 该方案无需手动维护JSON文件内的事件顺序,每次站点构建时会自动完成日期解析和排序,稳定性高,原有模板逻辑不需要做任何修改。

内容的提问来源于stack exchange,提问作者LaylaCodesIt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 01:57:07