summaryrefslogtreecommitdiffstats
path: root/hugolib/page.go
diff options
context:
space:
mode:
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2017-05-06 20:15:28 +0200
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>2017-05-13 22:44:15 +0300
commitaf72db806f2c1c0bf1dfe5832275c41eeba89906 (patch)
treea1bc9c7d09836073a811a1b395b7756727fdb210 /hugolib/page.go
parente951d65771ca299aa899e91bfe00411a5ada8f19 (diff)
hugolib: Handle shortcode per output format
This commit allows shortcode per output format, a typical use case would be the special AMP media tags. Note that this will only re-render the "overridden" shortcodes and only in pages where these are used, so performance in the normal case should not suffer. Closes #3220
Diffstat (limited to 'hugolib/page.go')
-rw-r--r--hugolib/page.go9
1 files changed, 7 insertions, 2 deletions
diff --git a/hugolib/page.go b/hugolib/page.go
index 21603c3dc..8de4ad924 100644
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -1257,6 +1257,11 @@ func (p *Page) Menus() PageMenus {
return p.pageMenus
}
+func (p *Page) shouldRenderTo(f output.Format) bool {
+ _, found := p.outputFormats.GetByName(f.Name)
+ return found
+}
+
func (p *Page) determineMarkupType() string {
// Try markup explicitly set in the frontmatter
p.Markup = helpers.GuessType(p.Markup)
@@ -1372,8 +1377,8 @@ func (p *Page) SaveSource() error {
}
func (p *Page) processShortcodes() error {
- p.shortcodeState = newShortcodeHandler()
- tmpContent, err := p.shortcodeState.extractAndRenderShortcodes(string(p.workContent), p)
+ p.shortcodeState = newShortcodeHandler(p)
+ tmpContent, err := p.shortcodeState.extractShortcodes(string(p.workContent), p)
if err != nil {
return err
}