ref: c4c19ad303cb11616a7291bdbeec997e59b6d24e
parent: 3343cacc0e5a94ca50537cb5612b5549be2d9ca0
author: Anthony Fok <foka@debian.org>
date: Thu Mar 5 23:47:04 EST 2015
Prevent 404.html from prettifying into 404/index.html Restore @realchaseadams's commit 348e123 "Force `UglyUrls` option to force `404.html` file name" which got lost after some refactoring (commit 8db3c0b). Remove the equivalent "force `UglyUrls`" code for `sitemap.xml` because the refactored code now calls `renderAndWriteXML()` which uses `WriteDestFile()` which does not prettify a filename. Fixes #939
--- a/hugolib/site.go
+++ b/hugolib/site.go
@@ -1250,6 +1250,12 @@
}
}
+ // Force `UglyUrls` option to force `404.html` file name
+ if !s.PageTarget().(*target.PagePub).UglyUrls {+ s.PageTarget().(*target.PagePub).UglyUrls = true
+ defer func() { s.PageTarget().(*target.PagePub).UglyUrls = false }()+ }
+
n.Url = helpers.Urlize("404.html")n.Title = "404 Page not found"
n.Permalink = s.permalink("404.html")@@ -1269,8 +1275,6 @@
sitemapDefault := parseSitemap(viper.GetStringMap("Sitemap"))- optChanged := false
-
n := s.NewNode()
// Prepend homepage to the list of pages
@@ -1296,21 +1300,10 @@
}
}
- // Force `UglyUrls` option to force `sitemap.xml` file name
- switch s.PageTarget().(type) {- case *target.Filesystem:
- s.PageTarget().(*target.PagePub).UglyUrls = true
- optChanged = true
- }
-
smLayouts := []string{"sitemap.xml", "_default/sitemap.xml", "_internal/_default/sitemap.xml"} if err := s.renderAndWriteXML("sitemap", "sitemap.xml", n, s.appendThemeTemplates(smLayouts)...); err != nil {return err
- }
-
- if optChanged {- s.PageTarget().(*target.PagePub).UglyUrls = viper.GetBool("UglyUrls")}
return nil
--
⑨