TL;DR – Languages can only be downloaded via Settings > General > Site Language when
DISALLOW_FILE_MODS are set to
One day I was trying to write up a development plan for implementing multilingual support for a client. They had an interest in also making the WordPress admin multilingual as well, so I figured that would be a quick change since WordPress has built-in support for multiple languages.
Unfortunately, all of the documentation I found online stated something along the lines of, “Go to Settings > General > Site Language and update the dropdown to whatever you’d like to use”. That’s great news that it’s just a setting change, but when I tried to change the language I only found “English (US)” as an option. After some deeper searching, I couldn’t find any reason why I wasn’t seeing any other languages available.
I hopped on a call with a co-worker and we were both stumped. At Modern Tribe, we use a sophisticated starter theme that allows us to do some amazing stuff within the context of WordPress, but it’s also pretty opinionated. Since we work with some large enterprise clients, we have a complex wp-config.php which sets up some important defaults for us.
Two of these defaults are
DISALLOW_FILE_MODS which, for the most part, should be set to
true. These two options control quite a lot in WordPress core like keeping plugins from updating automatically and disabling the plugin and theme editors.
In my case, it also keeps users from being able to choose alternate languages in the General Settings of a site. All of those other languages are downloaded as needed, and since we don’t allow editing/modifying files, WordPress doesn’t show any optional languages.
So, if you ever run into this issue in the future and are searching around wondering why you’re not seeing Language options in WordPress, check your