mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-22 21:42:50 +02:00
hugolib: Consider summary in front matter for .Summary
Add the ability to have a `summary` page variable that overrides the auto-generated summary. Logic for obtaining summary becomes: * if summary divider is present in content, use the text above it * if summary variables is present in page metadata, use that * auto-generate summary from first _x_ words of the content Fixes #5800
This commit is contained in:
committed by
Bjørn Erik Pedersen
parent
ebab291c0e
commit
3a62d54745
@@ -128,6 +128,14 @@ func newPageContentOutput(p *pageState) func(f output.Format) (*pageContentOutpu
|
||||
cp.summary = helpers.BytesToHTML(summary)
|
||||
}
|
||||
}
|
||||
} else if cp.p.m.summary != "" {
|
||||
html := cp.p.s.ContentSpec.RenderBytes(&helpers.RenderingContext{
|
||||
Content: []byte(cp.p.m.summary), RenderTOC: false, PageFmt: cp.p.m.markup,
|
||||
Cfg: p.Language(),
|
||||
DocumentID: p.File().UniqueID(), DocumentName: p.File().Path(),
|
||||
Config: cp.p.getRenderingConfig()})
|
||||
html = cp.p.s.ContentSpec.TrimShortHTML(html)
|
||||
cp.summary = helpers.BytesToHTML(html)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -271,7 +279,7 @@ func (p *pageContentOutput) WordCount() int {
|
||||
}
|
||||
|
||||
func (p *pageContentOutput) setAutoSummary() error {
|
||||
if p.p.source.hasSummaryDivider {
|
||||
if p.p.source.hasSummaryDivider || p.p.m.summary != "" {
|
||||
return nil
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user