Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2022-11-01 19:15:04 +0300
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2022-11-01 20:45:34 +0300
commit52ea07d2eb9c581015f85c0d2d6973640a62281b (patch)
tree5686ef920a723f3ded34b5b9b50fb46d7b8b4b9b
parent77fc74a5b20f50298ac4a1cd88e436932fc2226f (diff)
Fix taxonomy weight sort regression
Fixes #10406
-rw-r--r--hugolib/page.go5
-rw-r--r--hugolib/taxonomy_test.go42
2 files changed, 44 insertions, 3 deletions
diff --git a/hugolib/page.go b/hugolib/page.go
index 9f0d08ca3..ec7b82277 100644
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -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:
diff --git a/hugolib/taxonomy_test.go b/hugolib/taxonomy_test.go
index b26032174..b6b696ed3 100644
--- a/hugolib/taxonomy_test.go
+++ b/hugolib/taxonomy_test.go
@@ -60,7 +60,6 @@ YAML frontmatter with tags and categories taxonomy.`
}
}
-//
func TestTaxonomiesWithAndWithoutContentFile(t *testing.T) {
for _, uglyURLs := range []bool{false, true} {
uglyURLs := uglyURLs
@@ -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", `
@@ -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/|:`)
+}