I've been building multi-language Joomla sites since J1.5 - most with more than 10 languages. In J3.x I'm finding that the ordering in the language selector seems to be broken. Here's how it's supposed to work (from the Description of the Language Selector module):

The way the flags or names of the languages are displayed is defined by the ordering in the Language Manager - Content Languages.

This holds true if I use the Dropdown menu - the order is the same as in Language Manager > Content Languages. But if I turn off the Dropdown menu and use either a horizontal or vertical image display the order goes crazy. It does not revert to ID order, native title, or any other order I can see.

I'm attaching screen caps showing a site in development with 15 languages - the drop down shows the correct order. The horizontal flags show the crazy order.

drop down menu with ordering

horizontal images with weird ordering

My work-around is to use the Dropdown menu but my clients like the look of the flags. Never had this issue with J1.x or J2.5 but it's the second J3 site I've built with this issue.

Any ideas?

1 Answer 1


May be you have module layout overrides? I've just tested it on my website and ordering is working as expected - by the ordering in the Language Manager.

  • No module layout overrides. I even tried it with Protostar template instead of the regular template and it behaved the same. But it's good to know that it's working correctly for someone else. Jun 10, 2014 at 13:34
  • This is strange, because module is using the same array of languages in the layout for dropdown and not for not-dropdown. You can try to dump this array like var_dump($list); around line 22 and line 30 to be sure that it is the same. It is /modules/mod_languages/tmpl/default.php file. Jun 10, 2014 at 13:47
  • Sorry can't edit my previous comment. There is a small, but important mistake. This is the correct text - the same array of languages in the layout for dropdown and for not-dropdown Jun 10, 2014 at 14:46
  • Thank you, Dmitry. I checked /modules/mod_languages/tmpl/default.php and line 22 and line 30 both are the same - <?php foreach ($list as $language) : ?>. I downloaded a full install version of Joomla 3.3 and replaced default.php on the site with the one from J3.3 - no change in the layout. I'm missing something... Jun 10, 2014 at 17:58
  • That sounds like a mystery. Can you var_dump($list); both to be sure that order in both is the same? Jun 11, 2014 at 6:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.