Skip to content

Commit

Permalink
Fix taxonomy weight sort regression
Browse files Browse the repository at this point in the history
Fixes #10406
  • Loading branch information
bep committed Nov 1, 2022
1 parent 77fc74a commit 52ea07d
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 3 deletions.
5 changes: 4 additions & 1 deletion hugolib/page.go
Original file line number Diff line number Diff line change
Expand Up @@ -268,7 +268,10 @@ func (p *pageState) Pages() page.Pages {
case page.KindSection, page.KindHome:
pages = p.getPagesAndSections()
case page.KindTerm:
pages = p.bucket.getTaxonomyEntries()
b := p.treeRef.n
viewInfo := b.viewInfo
taxonomy := p.s.Taxonomies()[viewInfo.name.plural].Get(viewInfo.termKey)
pages = taxonomy.Pages()
case page.KindTaxonomy:
pages = p.bucket.getTaxonomies()
default:
Expand Down
42 changes: 40 additions & 2 deletions hugolib/taxonomy_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,6 @@ YAML frontmatter with tags and categories taxonomy.`
}
}

//
func TestTaxonomiesWithAndWithoutContentFile(t *testing.T) {
for _, uglyURLs := range []bool{false, true} {
uglyURLs := uglyURLs
Expand Down Expand Up @@ -521,7 +520,7 @@ Funny:|/p1/|
Funny:|/p2/|`)
}

//https://github.com/gohugoio/hugo/issues/6590
// https://github.com/gohugoio/hugo/issues/6590
func TestTaxonomiesListPages(t *testing.T) {
b := newTestSitesBuilder(t)
b.WithTemplates("_default/list.html", `
Expand Down Expand Up @@ -694,3 +693,42 @@ abcdefgs: {{ template "print-page" $abcdefgs }}|IsAncestor: {{ $abcdefgs.IsAnces
abcdefgs: /abcdefgs/|Abcdefgs|taxonomy|Parent: /|CurrentSection: /|FirstSection: /|IsAncestor: true|IsDescendant: false
`)
}

func TestTaxonomiesWeightSort(t *testing.T) {

files := `
-- layouts/index.html --
{{ $a := site.GetPage "tags/a"}}
:{{ range $a.Pages }}{{ .RelPermalink }}|{{ end }}:
-- content/p1.md --
---
title: P1
weight: 100
tags: ['a']
tags_weight: 20
---
-- content/p3.md --
---
title: P2
weight: 200
tags: ['a']
tags_weight: 30
---
-- content/p2.md --
---
title: P3
weight: 50
tags: ['a']
tags_weight: 40
---
`

b := NewIntegrationTestBuilder(
IntegrationTestConfig{
T: t,
TxtarString: files,
},
).Build()

b.AssertFileContent("public/index.html", `:/p1/|/p3/|/p2/|:`)
}

0 comments on commit 52ea07d

Please sign in to comment.