Skip to main content

Multilingual Site

Overview

Basically, transforming an existing Joomla website into a Joomla multilanguage website is nothing more than duplicating your content (categories, articles, menus, menu items, modules) and assigning all this to a separate language.

As alternative you can use 3'rd party extensions like Falang or JomFish.

Before you start, disable or clear your cache to ensure JomDirectory using the latest data. Finally, if you use any SEO plugins (JoomSEF, Sh404SEF, SEOSimple, MijoSEF) 

Your language means e.g. Spanish, French or whatever language you are using. These steps need to be followed for every new language you configure.

Install your language pack

Since we want Joomla to generate language-specific strings on our site (and even on our backend if we want to), we first have to install one or more language packs. (After installation, the new language will appear under Extensions > Language Manager. It shows up both under the tabs Installed – Site and Installed – Administrator). For more information on installing language packs, check out https://docs.joomla.org/J3.x:Setup_a_Multilingual_Site/Installing_New_Language.

Filter a specific language

By enabling functionality to filter a specific language, we can ask Joomla to discover the language that’s been used in the browser of our visitor. In that way, Joomla will automatically provide the visitor with his preferred language. This is the case whenever there’s a match between the browser settings language of the visitor and one of the languages that’s installed in our Joomla website. If there’s no match, the visitor will be shown the default language.

  • Extensions > Plug-in Manager > click System – Language Filter
  • Status: Enabled
  • Menu associations: Yes
  • Click Save & Close

When a visitor to your site is looking at your English listings, by switching to the another language (see A Language Switch Module), Joomla will know that you still want to see the Directory Listing, but in a different language. (If you don’t use menu item associations, Joomla will send the user to the homepage which is not exactly something we want to happen.)

Enable second language for JomDirectory 

Assuming that you already have an English categories (language also set to English), duplicate category (Save as copy) and edit it's details. Go to Publishing tab and sets desired language than Save. Do that for every category. 

Do the same for the Custom fields and Listings. If necessary also Addresses and Reviews.

Duplicate menu

We need to duplicate our current menu, so menus are available for each one of the installed languages. First, we assign the current menu to the English language.

  • Menus > Menu Manager > click the checkbox of the current menu
  • Click edit
  • Title: English
  • Menu type: english
  • Description: English language menu
  • Click Save & Close
Now create Your's language menu.
  • Click New
  • Title: French
  • Menu type: french
  • Description: French language menu
  • Click Save & Close

Duplicate JomDirectory menu items

Since we created a separate menu for each language, we need to duplicate our menu items as well. By default, the current menu items are set to the language All. First, assign them to the English menu.

  • Click Menu Items
  • Click Check All
  • Set Language: English
  • Click Process

JomDirectory Items link needs to be duplicated for each language.  More about creating menu links can be found here

Now duplicate the menu items and assign them to the Your's language menu.

  • Click Check All
  • Set Language: French
  • Select Menu or Parent for Move/Copy: French Add to this menu and click Copy
  • Click Process

Duplicate the menu placeholders

Now that the menus and menu items are generated for both languages, we need a menu module to publish them on the site. We first assign the English menu to the current menu module.
  • Extensions > Module Manager > click your current menu
  • Title: English menu
  • Language: English
  • Module Assignment: to clear all checkboxes click No pages
  • Module Assignment: Only on the pages selected
  • On the English tab below check all boxes
  • Select Menu: English
  • Click Save
Now duplicate this menu module and assign it to the French menu.
  • Click Save as Copy
  • Title: French menu
  • Status: Published
  • Language: French
  • Module Assignment: to clear all checkboxes click No pages
  • Module Assignment: Only on the pages selected
  • On the French tab below check all boxes
  • Select Menu: French
  • Click Save & Close 

A language switcher module

We want to provide our visitors a way so they can switch to another language. To accomplish this, we’re going to publish the language switcher module. This module uses a dropdown to switch languages, but you can also use little clickable icon flags.

  • Click New
  • Click Language Switcher
  • Title: Language Switcher
  • Position: select the position where you want the icon flags to show up on the page
  • Click Save & Close