diff options
author | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2017-05-05 10:24:37 +0300 |
---|---|---|
committer | Bjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com> | 2017-05-13 22:44:15 +0300 |
commit | 2bcbf104006e0ec03be4fd500f2519301d460f8c (patch) | |
tree | c0a9f17515d1d8789efc47aa8bc790e111a9c5d0 /hugolib/hugo_sites_build.go | |
parent | 1e4d082cf5b92fedbc60b1b4f0e9d1ee6ec45e33 (diff) |
hugolib: Prepare render per output format
See #3220
Diffstat (limited to 'hugolib/hugo_sites_build.go')
-rw-r--r-- | hugolib/hugo_sites_build.go | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/hugolib/hugo_sites_build.go b/hugolib/hugo_sites_build.go index 58088fd7c..12689f6de 100644 --- a/hugolib/hugo_sites_build.go +++ b/hugolib/hugo_sites_build.go @@ -203,26 +203,31 @@ func (h *HugoSites) assemble(config *BuildCfg) error { return err } - for _, s := range h.Sites { - s.preparePagesForRender(config) - } - return nil } func (h *HugoSites) render(config *BuildCfg) error { - if !config.SkipRender { - for _, s := range h.Sites { - if err := s.render(); err != nil { - return err - } - if config.PrintStats { - s.Stats() + for _, s := range h.Sites { + s.initRenderFormats() + for i, rf := range s.renderFormats { + s.rc = &siteRenderingContext{Format: rf} + s.preparePagesForRender(i, config) + + if !config.SkipRender { + if err := s.render(i); err != nil { + return err + } } } + if !config.SkipRender && config.PrintStats { + s.Stats() + } + } + + if !config.SkipRender { if err := h.renderCrossSitesArtifacts(); err != nil { return err } |