按用户定义的属性排序

Amr*_*man 5 go-html-template hugo

我正在使用hugo v0.15,我正在尝试对自定义属性的页面进行排序。

我将子页面定义如下:

+++
title= "bla bla bla"
parent = "parent"
index = 0 # each page is assigned a unique index
+++
Run Code Online (Sandbox Code Playgroud)

在我的父模板中如下:

{{ range sort .Site.Pages ".Params.index" }}
    <a href="{{.RelPermalink}}">
          {{.Title}} {{.Params.index}}
    </a>
{{end}}
Run Code Online (Sandbox Code Playgroud)

这在编译时不会失败,但列表呈现为空。我缺少什么?

Amr*_*man 3

好吧,我走错了方向。我发现有一个默认参数只是用于排序,“权重”

所以,解决方法是:

use "weight" instead of "index"
Run Code Online (Sandbox Code Playgroud)

并使用重量

{{ range sort .Site.Pages ".Weight" }}
Run Code Online (Sandbox Code Playgroud)

这解决了我的问题,但是使用用户定义的属性进行排序仍然存在问题。