hugolib: Apply titleCaseStyle to automatic section pages

Fixes #11547
This commit is contained in:
Joe Mooring 2023-10-08 21:58:54 -07:00 committed by Bjørn Erik Pedersen
parent 9ea7103db7
commit 171836cdfa
2 changed files with 35 additions and 5 deletions

View file

@ -114,3 +114,36 @@ func TestRenderStringBadMarkupOpt(t *testing.T) {
}
}
// Issue #11547
func TestTitleCaseStyleWithAutomaticSectionPages(t *testing.T) {
t.Parallel()
files := `
-- config.toml --
titleCaseStyle = 'none'
-- content/books/book-1.md --
---
title: Book 1
tags: [fiction]
---
-- content/films/_index.md --
---
title: Films
---
-- layouts/index.html --
{{ (site.GetPage "/tags").Title }}
{{ (site.GetPage "/tags/fiction").Title }}
{{ (site.GetPage "/books").Title }}
{{ (site.GetPage "/films").Title }}
`
b := hugolib.NewIntegrationTestBuilder(
hugolib.IntegrationTestConfig{
T: t,
TxtarString: files,
},
)
b.Build()
b.AssertFileContent("public/index.html", "tags\nfiction\nbooks\nFilms")
}

View file

@ -690,13 +690,10 @@ func (p *pageMeta) applyDefaultValues(n *contentNode) error {
} else {
sectionName = p.sections[0]
}
sectionName = helpers.FirstUpper(sectionName)
if p.s.conf.PluralizeListTitles {
p.title = flect.Pluralize(sectionName)
} else {
p.title = sectionName
sectionName = flect.Pluralize(sectionName)
}
p.title = p.s.conf.C.CreateTitle(sectionName)
case kinds.KindTerm:
// TODO(bep) improve
key := p.sections[len(p.sections)-1]