Order languages

POM Translate always places the main locale first in its effective language list. Additional locales follow in the order of the sortable Additional languages repeater.

This order affects more than the appearance of one dropdown.

Where the order comes from

The effective sequence is:

WordPress main locale
additional locale 1
additional locale 2
additional locale 3

The runtime removes empty entries, ignores an additional row equal to the main locale, and collapses duplicate locales while keeping the first occurrence.

The main language is not a sortable repeater item. It remains first even if a target language is the site’s most important market.

What follows the sequence

The configured order is used by:

  • nav-menu language selectors;
  • shortcode language selectors;
  • the floating selector;
  • translation locale choices and summaries;
  • integrations that consume the available-language helper;
  • general browser-language matching when several regional variants share one language code.

An individual selector can still hide the current or base language through its own supported options. That filtering preserves the relative order of the remaining locales.

Regional browser matching makes order significant

A browser can send an exact preference such as en-GB or a general preference such as en.

POM Translate prefers exact configured matches. When only the two-letter language is available, it selects the first configured locale in that language group. Because the main locale is first, it wins when it shares the requested language. Otherwise, the first matching additional locale wins.

Example:

Main: es_ES
Additional: en_GB, en_US
Browser sends: en
Result: en_GB

Reverse the two English rows and the general en match changes to en_US. Exact en-US still selects en_US.

Reorder additional languages

  1. Open Settings → POM Translate → Languages setup → Base setup.
  2. Locate Additional languages.
  3. Drag each complete language item into the intended position.
  4. Keep regional variants in a deliberate priority order.
  5. Save the settings.
  6. Reload and confirm the stored order.
  7. Check nav-menu, shortcode, and floating selectors.
  8. Test a general browser preference on staging if browser detection is enabled.

The custom label moves with its language item.

What reordering does not change

Moving a locale does not:

  • change its locale code;
  • rewrite its generated unique prefix;
  • move or duplicate translations;
  • change the canonical source locale;
  • review incomplete content;
  • redirect old URLs;
  • alter the configured browser redirect fallback.

Reordering shared selector output can require page and CDN cache invalidation.

Choose an order visitors understand

Common strategies include:

  • business priority;
  • audience size;
  • local language names alphabetically;
  • regional grouping;
  • exact browser-matching preference.

Apply one rule consistently. Do not use flag order alone when several locales share a language or a country has several official languages.

Verify after the change

For each selector surface:

  • the main locale appears first unless intentionally hidden by that selector;
  • additional languages preserve the repeater order;
  • the current language is marked correctly;
  • each label stays attached to the correct locale;
  • each URL still uses the expected prefix;
  • general browser matching selects the intended regional variant;
  • exact regional browser matching remains exact.

Continue with Understand URL language prefixes to see why order and prefix identity are separate.