少于1分钟
将以下英文翻译为中文:
https://gohugo.io/functions/sort/
Sorts slices, maps, and page collections.
sort COLLECTION [KEY] [ORDER]
The KEY
is optional when sorting slices in ascending order, otherwise it is required. When sorting slices, use the literal value
in place of the KEY
. See examples below.
The ORDER
may be either asc
(ascending) or desc
(descending). The default sort order is ascending.
The examples below assume this site configuration:
config.
=== “yaml”
``` yaml
params:
grades:
- b
- a
- c
```
=== “toml”
``` toml
[params]
grades = ['b', 'a', 'c']
```
=== “json”
``` json
{
"params": {
"grades": [
"b",
"a",
"c"
]
}
}
```
Sort slice elements in ascending order using either of these constructs:
layouts/_default/single.html
|
|
In the examples above, value
is the KEY
representing the value of the slice element.
Sort slice elements in descending order:
layouts/_default/single.html
|
|
In the example above, value
is the KEY
representing the value of the slice element.
The examples below assume this site configuration:
config.
=== “yaml”
``` yaml
params:
authors:
a:
firstName: Marius
lastName: Pontmercy
b:
firstName: Victor
lastName: Hugo
c:
firstName: Jean
lastName: Valjean
```
=== “toml”
``` toml
[params]
[params.authors]
[params.authors.a]
firstName = 'Marius'
lastName = 'Pontmercy'
[params.authors.b]
firstName = 'Victor'
lastName = 'Hugo'
[params.authors.c]
firstName = 'Jean'
lastName = 'Valjean'
```
=== “json”
``` json
{
"params": {
"authors": {
"a": {
"firstName": "Marius",
"lastName": "Pontmercy"
},
"b": {
"firstName": "Victor",
"lastName": "Hugo"
},
"c": {
"firstName": "Jean",
"lastName": "Valjean"
}
}
}
}
```
When sorting maps, the KEY
argument must be lowercase.
Sort map objects in ascending order using either of these constructs:
layouts/_default/single.html
|
|
These produce:
|
|
Sort map objects in descending order:
layouts/_default/single.html
|
|
This produces:
|
|
Although you can use the sort
function to sort a page collection, Hugo provides built-in methods for sorting page collections by:
In this contrived example, sort the site’s regular pages by .Type
in descending order:
layouts/_default/home.html
|
|