mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-21 20:46:30 -05:00
content adapter: Fix site.GetPage using the base part of the path
Fixes #12561
This commit is contained in:
parent
c8dac67def
commit
917199a94e
2 changed files with 35 additions and 2 deletions
|
@ -932,8 +932,8 @@ func newPageMap(i int, s *Site, mcache *dynacache.Cache, pageTrees *pageTrees) *
|
||||||
LockType: doctree.LockTypeRead,
|
LockType: doctree.LockTypeRead,
|
||||||
Handle: func(s string, n contentNodeI, match doctree.DimensionFlag) (bool, error) {
|
Handle: func(s string, n contentNodeI, match doctree.DimensionFlag) (bool, error) {
|
||||||
p := n.(*pageState)
|
p := n.(*pageState)
|
||||||
if p.File() != nil {
|
if p.PathInfo() != nil {
|
||||||
add(p.File().FileInfo().Meta().PathInfo.BaseNameNoIdentifier(), p)
|
add(p.PathInfo().BaseNameNoIdentifier(), p)
|
||||||
}
|
}
|
||||||
return false, nil
|
return false, nil
|
||||||
},
|
},
|
||||||
|
|
|
@ -693,3 +693,36 @@ draft: true
|
||||||
b.AssertFileContent("public/s1-foo/index.html", "/s1-foo/: Pages: /s1-foo/p2/|/s1-foo/s2-foo/|/s1-foo/s2/|$")
|
b.AssertFileContent("public/s1-foo/index.html", "/s1-foo/: Pages: /s1-foo/p2/|/s1-foo/s2-foo/|/s1-foo/s2/|$")
|
||||||
b.AssertFileContent("public/s1-foo/s2/index.html", "/s1-foo/s2/: Pages: /s1-foo/s2/p3/|$")
|
b.AssertFileContent("public/s1-foo/s2/index.html", "/s1-foo/s2/: Pages: /s1-foo/s2/p3/|$")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestGetPageContentAdapterBaseIssue12561(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
files := `
|
||||||
|
-- hugo.toml --
|
||||||
|
disableKinds = ['rss','section','sitemap','taxonomy','term']
|
||||||
|
-- layouts/index.html --
|
||||||
|
Test A: {{ (site.GetPage "/s1/p1").Title }}
|
||||||
|
Test B: {{ (site.GetPage "p1").Title }}
|
||||||
|
Test C: {{ (site.GetPage "/s2/p2").Title }}
|
||||||
|
Test D: {{ (site.GetPage "p2").Title }}
|
||||||
|
-- layouts/_default/single.html --
|
||||||
|
{{ .Title }}
|
||||||
|
-- content/s1/p1.md --
|
||||||
|
---
|
||||||
|
title: p1
|
||||||
|
---
|
||||||
|
-- content/s2/_content.gotmpl --
|
||||||
|
{{ .AddPage (dict "path" "p2" "title" "p2") }}
|
||||||
|
`
|
||||||
|
|
||||||
|
b := Test(t, files)
|
||||||
|
|
||||||
|
b.AssertFileExists("public/s1/p1/index.html", true)
|
||||||
|
b.AssertFileExists("public/s2/p2/index.html", true)
|
||||||
|
b.AssertFileContent("public/index.html",
|
||||||
|
"Test A: p1",
|
||||||
|
"Test B: p1",
|
||||||
|
"Test C: p2",
|
||||||
|
"Test D: p2", // fails
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in a new issue