Make page 1 alias ugly
authorbep <bjorn.erik.pedersen@gmail.com>
Sun, 10 May 2015 16:28:47 +0000 (18:28 +0200)
committerbep <bjorn.erik.pedersen@gmail.com>
Sun, 10 May 2015 16:28:44 +0000 (18:28 +0200)
When `uglyurls = true`

Fixes #1121

helpers/path.go
hugolib/site.go

index 53e29591f77b1791917aa0695816e064dad5a781..e7b84ade3a40c481095a01d8160dba57f986924e 100644 (file)
@@ -299,6 +299,22 @@ func GetRelativePath(path, base string) (final string, err error) {
        return name, nil
 }
 
+func PaginateAliasPath(base string, page int) string {
+       paginatePath := viper.GetString("paginatePath")
+       uglify := viper.GetBool("UglyURLs")
+       var p string
+       if base != "" {
+               p = filepath.FromSlash(fmt.Sprintf("/%s/%s/%d", base, paginatePath, page))
+       } else {
+               p = filepath.FromSlash(fmt.Sprintf("/%s/%d", paginatePath, page))
+       }
+       if uglify {
+               p += ".html"
+       }
+
+       return p
+}
+
 // GuessSection returns the section given a source path.
 // A section is the part between the root slash and the second slash
 // or before the first slash.
index 3e639760afa82cc3e5a11fa750fea45fc2621456..2018df4bb6ca97bcc1416bf0e83587fb1d04e9eb 100644 (file)
@@ -1096,7 +1096,7 @@ func taxonomyRenderer(s *Site, taxes <-chan taxRenderInfo, results chan<- error,
                        paginatePath := viper.GetString("paginatePath")
 
                        // write alias for page 1
-                       s.WriteDestAlias(fmt.Sprintf("%s/%s/%d/index.html", base, paginatePath, 1), s.permalink(base))
+                       s.WriteDestAlias(helpers.PaginateAliasPath(base, 1), s.permalink(base))
 
                        pagers := n.paginator.Pagers()
 
@@ -1191,7 +1191,7 @@ func (s *Site) RenderSectionLists() error {
                        paginatePath := viper.GetString("paginatePath")
 
                        // write alias for page 1
-                       s.WriteDestAlias(filepath.FromSlash(fmt.Sprintf("/%s/%s/%d", section, paginatePath, 1)), s.permalink(section))
+                       s.WriteDestAlias(helpers.PaginateAliasPath(section, 1), s.permalink(section))
 
                        pagers := n.paginator.Pagers()
 
@@ -1248,7 +1248,7 @@ func (s *Site) RenderHomePage() error {
                paginatePath := viper.GetString("paginatePath")
 
                // write alias for page 1
-               s.WriteDestAlias(filepath.FromSlash(fmt.Sprintf("/%s/%d", paginatePath, 1)), s.permalink("/"))
+               s.WriteDestAlias(helpers.PaginateAliasPath("", 1), s.permalink("/"))
 
                pagers := n.paginator.Pagers()