diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2018-07-24 10:10:51 +0200 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2018-07-24 11:37:59 +0200 |
commit | 04d4c08dbcac08ff7feeb88863e91799fed0937b (patch) | |
tree | 0c1dd87f381690c73b356602a52cb82b333f12c8 /hugolib | |
parent | 016dd4a69a765061bb3da8490d3cac6ec47a91eb (diff) |
hugolib: Fix .Site.GetPage regression
In Hugo 0.44 we simplified the `.Site.GetPage` API and added code to handle the old-style syntax in most cases.
This logic did not handle the lookup of the home page via `.Site.GetPage "section" ""` and similar. This commit fixes that.
Fixes #4989
Diffstat (limited to 'hugolib')
-rw-r--r-- | hugolib/page_collections.go | 9 | ||||
-rw-r--r-- | hugolib/site_sections_test.go | 2 |
2 files changed, 10 insertions, 1 deletions
diff --git a/hugolib/page_collections.go b/hugolib/page_collections.go index d196d67a3..d99857aec 100644 --- a/hugolib/page_collections.go +++ b/hugolib/page_collections.go @@ -176,7 +176,14 @@ func (c *PageCollections) getPageOldVersion(ref ...string) (*Page, error) { if len(refs) == 0 || refs[0] == KindHome { key = "/" } else if len(refs) == 1 { - key = refs[0] + if len(ref) == 2 && refs[0] == KindSection { + // This is an old style reference to the "Home Page section". + // Typically fetched via {{ .Site.GetPage "section" .Section }} + // See https://github.com/gohugoio/hugo/issues/4989 + key = "/" + } else { + key = refs[0] + } } else { key = refs[1] } diff --git a/hugolib/site_sections_test.go b/hugolib/site_sections_test.go index bfec623e5..86ae4080c 100644 --- a/hugolib/site_sections_test.go +++ b/hugolib/site_sections_test.go @@ -109,6 +109,8 @@ Content {{ range .Paginator.Pages }} PAG|{{ .Title }}|{{ $sect.InSection . }} {{ end }} +{{/* https://github.com/gohugoio/hugo/issues/4989 */}} +{{ $sections := (.Site.GetPage "section" .Section).Sections.ByWeight }} </html>`) cfg.Set("paginate", 2) |