Home Plugins preferred languages
Preferred Languages logo

Preferred Languages

by Pascal Birchler on WordPress.org

Choose languages for displaying WordPress in, in order of preference.

(17)
The new language section in 'Settings' -> 'General'

The new language section in 'Settings' -> 'General'

Thanks to language packs it’s easier than ever before to change the main language of your site.
However, in some cases a single locale is not enough. When WordPress can’t find a translation for the active locale, it falls back to the original English strings.
That’s a poor user experience for many non-English speakers.

This feature project aims to change that by letting users choose multiple languages for displaying WordPress in.
That way you can set some sort of “fallback chain” where WordPress tries to load translations in your preferred order.

Please help us test this plugin and let us know if something is not working as you think it should.

Keyboard Shortcuts

  • Arrow Up: Move selected locale one position up.
  • Arrow Down: Move selected locale one position down.
  • Home: Select first locale in the list.
  • End: Select last locale in the list.
  • Backspace/Delete: remove the selected locale from the list.
  • Alt+A: Add the current locale from the dropdown to the list.

Note: the Preferred Languages UI needs to be focused in order for the keyboard shortcuts to work.

Merging Translations

Previously, only the first available translation for a given locale and domain will be loaded.
However, when translations are incomplete, some strings might still be displayed in English.
That’s a poor user experience as well.

To prevent this, Preferred Languages now automatically merges all incomplete translations in the list.

the preferred_languages_merge_translations filter can be used to opt out of this behavior.
It provides three parameters:

  1. $merge – Whether translations should be merged. Defaults to true.
  2. $domain – The text domain
  3. $current_locale – The current locale.

Get Involved

Active development is taking place on GitHub.

If you want to get involved, check out open issues and join the #core-i18n channel on Slack. If you don’t have a Slack account yet, you can sign up at make.wordpress.org/chat/.

Active installations2K+
Weekly downloads
287-9.46%
Version2.4.0
Last updated4/8/2025
WordPress version6.6
Tested up to6.8.1
PHP version7.2.24
Tags
i18ninternationalizationlanguagelocalizationtranslation
Preferred Languages | Plugin0