layout: Respect Type and Layout for list template selection

This commit also has some other nice side-effects:

* The layout logic is unified for all page types, which should make it less surprising
* Page.Render now supports all types
* The legacy "indexes" type is removed from the template lookup order. This is an undocumented type from early Hugo days. This means that having a template in, say, `/layouts/indexes/list.html` will no longer work.
* The theme override logic is improved. As an example, an `index.html` in theme will now wn over a `_default/list.html` in the project, which most will expect.

Fixes #3005
Fixes #3245
This commit is contained in:
Bjørn Erik Pedersen
2018-01-13 17:21:42 +01:00
parent b6ea6d07d0
commit 51dd462c39
6 changed files with 220 additions and 225 deletions

View File

@@ -242,7 +242,6 @@ func (s *Site) renderRSS(p *PageOutput) error {
layouts, err := s.layoutHandler.For(
p.layoutDescriptor,
"",
p.outputFormat)
if err != nil {
return err