From: Bjørn Erik Pedersen Date: Fri, 9 Sep 2016 15:40:56 +0000 (+0200) Subject: Redirect to root when DefaultContentLanguageInSubdir = false X-Git-Tag: v0.17~94 X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=43bf9ed38e92919f143f84b6e3d09d10db883103;p=brevno-suite%2Fhugo Redirect to root when DefaultContentLanguageInSubdir = false Fixes #2422 --- diff --git a/hugolib/hugo_sites_test.go b/hugolib/hugo_sites_test.go index 4a600133..bae7c1e0 100644 --- a/hugolib/hugo_sites_test.go +++ b/hugolib/hugo_sites_test.go @@ -93,6 +93,9 @@ func doTestMultiSitesMainLangInRoot(t *testing.T, defaultInSubDir bool) { if defaultInSubDir { // should have a redirect on top level. assertFileContent(t, "public/index.html", true, ``) + } else { + // should have redirect back to root + assertFileContent(t, "public/fr/index.html", true, ``) } assertFileContent(t, "public/fr/index.html", defaultInSubDir, "Home", "Bonjour") assertFileContent(t, "public/en/index.html", defaultInSubDir, "Home", "Hello") diff --git a/hugolib/site.go b/hugolib/site.go index 3e537c93..6bff3b03 100644 --- a/hugolib/site.go +++ b/hugolib/site.go @@ -1457,12 +1457,20 @@ func (s *Site) renderAliases() error { } } - if s.owner.multilingual.enabled() && s.Info.defaultContentLanguageInSubdir { + if s.owner.multilingual.enabled() { mainLang := s.owner.multilingual.DefaultLang.Lang - mainLangURL := helpers.AbsURL(mainLang, false) - jww.DEBUG.Printf("Write redirect to main language %s: %s", mainLang, mainLangURL) - if err := s.publishDestAlias(s.languageAliasTarget(), "/", mainLangURL); err != nil { - return err + if s.Info.defaultContentLanguageInSubdir { + mainLangURL := helpers.AbsURL(mainLang, false) + jww.DEBUG.Printf("Write redirect to main language %s: %s", mainLang, mainLangURL) + if err := s.publishDestAlias(s.languageAliasTarget(), "/", mainLangURL); err != nil { + return err + } + } else { + mainLangURL := helpers.AbsURL("", false) + jww.DEBUG.Printf("Write redirect to main language %s: %s", mainLang, mainLangURL) + if err := s.publishDestAlias(s.languageAliasTarget(), mainLang, mainLangURL); err != nil { + return err + } } }