mirror of
https://github.com/gohugoio/hugo.git
synced 2025-08-19 21:21:39 +02:00
hugolib: Add validation for defaultContentLanguage
When `languages` are defined, then `defaultContentLanguage` must match one of those. Fixes #4298
This commit is contained in:
@@ -131,6 +131,22 @@ func loadLanguageSettings(cfg config.Provider, oldLangs helpers.Languages) error
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
defaultLang := cfg.GetString("defaultContentLanguage")
|
||||||
|
|
||||||
|
// The defaultContentLanguage is something the user has to decide, but it needs
|
||||||
|
// to match a language in the language definition list.
|
||||||
|
langExists := false
|
||||||
|
for _, lang := range langs {
|
||||||
|
if lang.Lang == defaultLang {
|
||||||
|
langExists = true
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if !langExists {
|
||||||
|
return fmt.Errorf("site config value %q for defaultContentLanguage does not match any language definition", defaultLang)
|
||||||
|
}
|
||||||
|
|
||||||
cfg.Set("languagesSorted", langs)
|
cfg.Set("languagesSorted", langs)
|
||||||
cfg.Set("multilingual", len(langs) > 1)
|
cfg.Set("multilingual", len(langs) > 1)
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user