mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-30 22:39:58 +02:00
Fix some change detection issues on server reloads
* Fix change detection when .GetPage/site.GetPage is used from shortcode * Fix stale content for GetPage results with short name lookups on server reloads Fixes #7623 Fixes #7624 Fixes #7625
This commit is contained in:
@@ -18,8 +18,11 @@ package page
|
||||
import (
|
||||
"html/template"
|
||||
|
||||
"github.com/gohugoio/hugo/identity"
|
||||
|
||||
"github.com/bep/gitmap"
|
||||
"github.com/gohugoio/hugo/config"
|
||||
"github.com/gohugoio/hugo/tpl"
|
||||
|
||||
"github.com/gohugoio/hugo/common/hugo"
|
||||
"github.com/gohugoio/hugo/common/maps"
|
||||
@@ -97,6 +100,9 @@ type GetPageProvider interface {
|
||||
// This will return nil when no page could be found, and will return
|
||||
// an error if the ref is ambiguous.
|
||||
GetPage(ref string) (Page, error)
|
||||
|
||||
// GetPageWithTemplateInfo is for internal use only.
|
||||
GetPageWithTemplateInfo(info tpl.Info, ref string) (Page, error)
|
||||
}
|
||||
|
||||
// GitInfoProvider provides Git info.
|
||||
@@ -260,6 +266,9 @@ type PageWithoutContent interface {
|
||||
// e.g. GetTerms("categories")
|
||||
GetTerms(taxonomy string) Pages
|
||||
|
||||
// Used in change/dependency tracking.
|
||||
identity.Provider
|
||||
|
||||
DeprecatedWarningPageMethods
|
||||
}
|
||||
|
||||
|
@@ -19,7 +19,10 @@ import (
|
||||
"html/template"
|
||||
"time"
|
||||
|
||||
"github.com/gohugoio/hugo/identity"
|
||||
|
||||
"github.com/gohugoio/hugo/hugofs/files"
|
||||
"github.com/gohugoio/hugo/tpl"
|
||||
|
||||
"github.com/gohugoio/hugo/hugofs"
|
||||
|
||||
@@ -170,6 +173,10 @@ func (p *nopPage) GetPage(ref string) (Page, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
func (p *nopPage) GetPageWithTemplateInfo(info tpl.Info, ref string) (Page, error) {
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
func (p *nopPage) GetParam(key string) interface{} {
|
||||
return nil
|
||||
}
|
||||
@@ -484,3 +491,7 @@ func (p *nopPage) Weight() int {
|
||||
func (p *nopPage) WordCount() int {
|
||||
return 0
|
||||
}
|
||||
|
||||
func (p *nopPage) GetIdentity() identity.Identity {
|
||||
return identity.NewPathIdentity("content", "foo/bar.md")
|
||||
}
|
||||
|
@@ -20,6 +20,8 @@ import (
|
||||
"time"
|
||||
|
||||
"github.com/gohugoio/hugo/hugofs/files"
|
||||
"github.com/gohugoio/hugo/identity"
|
||||
"github.com/gohugoio/hugo/tpl"
|
||||
|
||||
"github.com/gohugoio/hugo/modules"
|
||||
|
||||
@@ -218,6 +220,10 @@ func (p *testPage) GetPage(ref string) (Page, error) {
|
||||
panic("not implemented")
|
||||
}
|
||||
|
||||
func (p *testPage) GetPageWithTemplateInfo(info tpl.Info, ref string) (Page, error) {
|
||||
panic("not implemented")
|
||||
}
|
||||
|
||||
func (p *testPage) GetParam(key string) interface{} {
|
||||
panic("not implemented")
|
||||
}
|
||||
@@ -565,6 +571,10 @@ func (p *testPage) WordCount() int {
|
||||
panic("not implemented")
|
||||
}
|
||||
|
||||
func (p *testPage) GetIdentity() identity.Identity {
|
||||
panic("not implemented")
|
||||
}
|
||||
|
||||
func createTestPages(num int) Pages {
|
||||
pages := make(Pages, num)
|
||||
|
||||
|
Reference in New Issue
Block a user