summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2024-04-20 16:51:56 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2024-04-20 17:23:33 +0200
commit06d248910c4bc64ddb4c6773157d311f8ea6f600 (patch)
treeaf3aa5b1919cecce2f5f5a675906692316adcf6d
parent004b6943906471cff0d0232040d24cff6cb89e6b (diff)
Only add root sections to the section pages menu
Fixes #12399
-rw-r--r--hugolib/menu_test.go34
-rw-r--r--hugolib/site.go2
2 files changed, 35 insertions, 1 deletions
diff --git a/hugolib/menu_test.go b/hugolib/menu_test.go
index 816ffb676..9e73a8dc3 100644
--- a/hugolib/menu_test.go
+++ b/hugolib/menu_test.go
@@ -676,3 +676,37 @@ menu: main
b.AssertFileContent("public/fr/index.html", `<a href="/fr/p1/">p1</a>`)
b.AssertLogNotContains("WARN")
}
+
+func TestSectionPagesIssue12399(t *testing.T) {
+ t.Parallel()
+
+ files := `
+-- hugo.toml --
+disableKinds = ['rss','sitemap','taxonomy','term']
+capitalizeListTitles = false
+pluralizeListTitles = false
+sectionPagesMenu = 'main'
+-- content/p1.md --
+---
+title: p1
+---
+-- content/s1/p2.md --
+---
+title: p2
+menus: main
+---
+-- content/s1/p3.md --
+---
+title: p3
+---
+-- layouts/_default/list.html --
+{{ range site.Menus.main }}<a href="{{ .URL }}">{{ .Name }}</a>{{ end }}
+-- layouts/_default/single.html --
+{{ .Title }}
+`
+
+ b := Test(t, files)
+
+ b.AssertFileExists("public/index.html", true)
+ b.AssertFileContent("public/index.html", `<a href="/s1/p2/">p2</a><a href="/s1/">s1</a>`)
+}
diff --git a/hugolib/site.go b/hugolib/site.go
index b66a1284b..280387838 100644
--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -659,7 +659,7 @@ func (s *Site) assembleMenus() error {
if sectionPagesMenu != "" {
if err := s.pageMap.forEachPage(pagePredicates.ShouldListGlobal, func(p *pageState) (bool, error) {
- if p.IsHome() || !p.m.shouldBeCheckedForMenuDefinitions() {
+ if p.Kind() != kinds.KindSection || !p.m.shouldBeCheckedForMenuDefinitions() {
return false, nil
}