mirror of
https://github.com/gohugoio/hugo.git
synced 2024-11-30 01:53:34 -05:00
Centralizing the template execution logic in one place
This commit is contained in:
parent
c297d7451f
commit
4483a6655a
1 changed files with 1 additions and 19 deletions
|
@ -508,25 +508,7 @@ func (p *Page) Render(layout ...string) template.HTML {
|
|||
curLayout = layout[0]
|
||||
}
|
||||
|
||||
return bytesToHTML(p.ExecuteTemplate(curLayout).Bytes())
|
||||
}
|
||||
|
||||
func (p *Page) ExecuteTemplate(layout string) *bytes.Buffer {
|
||||
l := p.Layout(layout)
|
||||
buffer := new(bytes.Buffer)
|
||||
worked := false
|
||||
for _, layout := range l {
|
||||
if p.Tmpl.Lookup(layout) != nil {
|
||||
p.Tmpl.ExecuteTemplate(buffer, layout, p)
|
||||
worked = true
|
||||
break
|
||||
}
|
||||
}
|
||||
if !worked {
|
||||
jww.ERROR.Println("Unable to render", layout, ".")
|
||||
jww.ERROR.Println("Expecting to find a template in either the theme/layouts or /layouts in one of the following relative locations", l)
|
||||
}
|
||||
return buffer
|
||||
return ExecuteTemplateToHTML(p, p.Layout(curLayout)...)
|
||||
}
|
||||
|
||||
func (page *Page) guessMarkupType() string {
|
||||
|
|
Loading…
Reference in a new issue