Unify page lookups

This commit unifies the core internal page index for all page kinds.

This enables the `ref` and `relref` shortcodes to support all pages kinds, and adds a new page-relative  `.GetPage` method with simplified signature.

See #4147
See #4727
See #4728
See #4728
See #4726
See #4652
This commit is contained in:
Vas Sudanagunta
2018-05-29 21:35:27 -04:00
committed by Bjørn Erik Pedersen
parent fd1f4a7860
commit b93417aa1d
16 changed files with 294 additions and 153 deletions

View File

@@ -167,7 +167,7 @@ permalinkeds:
}
for taxonomy, count := range taxonomyTermPageCounts {
term := s.getPage(KindTaxonomyTerm, taxonomy)
term, _ := s.getPage(nil, taxonomy)
require.NotNil(t, term)
require.Len(t, term.Pages, count)
@@ -176,7 +176,7 @@ permalinkeds:
}
}
cat1 := s.getPage(KindTaxonomy, "categories", "cat1")
cat1, _ := s.getPage(nil, "categories/cat1")
require.NotNil(t, cat1)
if uglyURLs {
require.Equal(t, "/blog/categories/cat1.html", cat1.RelPermalink())
@@ -184,8 +184,8 @@ permalinkeds:
require.Equal(t, "/blog/categories/cat1/", cat1.RelPermalink())
}
pl1 := s.getPage(KindTaxonomy, "permalinkeds", "pl1")
permalinkeds := s.getPage(KindTaxonomyTerm, "permalinkeds")
pl1, _ := s.getPage(nil, "permalinkeds/pl1")
permalinkeds, _ := s.getPage(nil, "permalinkeds")
require.NotNil(t, pl1)
require.NotNil(t, permalinkeds)
if uglyURLs {
@@ -198,11 +198,11 @@ permalinkeds:
// Issue #3070 preserveTaxonomyNames
if preserveTaxonomyNames {
helloWorld := s.getPage(KindTaxonomy, "others", "Hello Hugo world")
helloWorld, _ := s.getPage(nil, "others/Hello Hugo world")
require.NotNil(t, helloWorld)
require.Equal(t, "Hello Hugo world", helloWorld.title)
} else {
helloWorld := s.getPage(KindTaxonomy, "others", "hello-hugo-world")
helloWorld, _ := s.getPage(nil, "others/hello-hugo-world")
require.NotNil(t, helloWorld)
require.Equal(t, "Hello Hugo World", helloWorld.title)
}