Joomla Multilingual Setup

Our company is engaged in the development, support and maintenance of sites of any complexity. From simple one-page sites to large-scale cluster systems built on micro services. Experience of developers is confirmed by certificates from vendors.
Development and maintenance of all types of websites:
Informational websites or web applications
Business card websites, landing pages, corporate websites, online catalogs, quizzes, promo websites, blogs, news resources, informational portals, forums, aggregators
E-commerce websites or web applications
Online stores, B2B portals, marketplaces, online exchanges, cashback websites, exchanges, dropshipping platforms, product parsers
Business process management web applications
CRM systems, ERP systems, corporate portals, production management systems, information parsers
Electronic service websites or web applications
Classified ads platforms, online schools, online cinemas, website builders, portals for electronic services, video hosting platforms, thematic portals

These are just some of the technical types of websites we work with, and each of them can have its own specific features and functionality, as well as be customized to meet the specific needs and goals of the client.

Our competencies:
Development stages
Latest works
  • image_web-applications_feedme_466_0.webp
    Development of a web application for FEEDME
    1161
  • image_ecommerce_furnoro_435_0.webp
    Development of an online store for the company FURNORO
    1041
  • image_crm_enviok_479_0.webp
    Development of a web application for Enviok
    822
  • image_crm_chasseurs_493_0.webp
    CRM development for Chasseurs
    847
  • image_website-sbh_0.png
    Website development for SBH Partners
    999
  • image_website-_0.png
    Website development for Red Pear
    451

Joomla Multilingual Setup

Joomla is the only major CMS with full multilingual support out of the box, no paid plugins. Multiple language support is built into core: articles, menus, categories, modules, templates are all translatable.

Installing Language Packs

Extensions → Languages → Install languages. Select required languages (Russian, Ukrainian, English), click install — Joomla downloads packages from official server.

Or manually:

# Via CLI (Joomla 4+)
php cli/joomla.php extension:install --url https://download.joomla.org/...

Content Language Setup

Extensions → Languages → Content languages → add languages with settings:

  • Language tag: ru-RU, en-GB, uk-UA
  • URL code: ru, en, uk — used in URL
  • SEF prefix: same

Language Filter

Components → Language associations → enable Language Filter plugin (Plugins → System → Language Filter):

Automatic language change: Yes
Remove URL language code for default language: Yes  (main language without prefix)
Show language code in URL: Yes

Multilingual Articles and Menus

Each language has a separate article variant. Joomla links them as language associations.

  1. Create article for Russian: language = ru-RU
  2. Create article for English: language = en-GB
  3. Components → Language associations → select Russian article → associate with English

Menus: create separate menu for each language. Menu items are bound to specific language.

Language Switcher

Add Language Switcher module (mod_languages) to template position:

// In template index.php
<jdoc:include type="modules" name="language-switcher" style="none" />

Module parameters:

  • Use flag images: optional
  • Horizontal position
  • Use dropdown: for many languages

Content Model for Multilingual Sites

For complex sites recommended structure:

Categories (by language):
├── News (ru-RU)
├── News (en-GB)
└── Новини (uk-UA)

Menus:
├── Main Menu (ru-RU)
├── Main Menu (en-GB)
└── Головне меню (uk-UA)

Language String Overrides

; language/en-GB/en-GB.com_content.ini
COM_CONTENT_ARTICLE_MORE_DETAILS="More"
COM_CONTENT_ARTICLES_FILTER_SEARCH_DESC="Enter search query"

Or via Extensions → Languages → Overrides.

SEO for Multilingual Sites

Hreflang is automatically added by Joomla for language associations. Check:

curl -s https://yourdomain.com/ | grep hreflang
# <link rel="alternate" hreflang="en" href="https://yourdomain.com/" />
# <link rel="alternate" hreflang="uk" href="https://yourdomain.com/uk/" />

Timeline

Setting up multilingual Joomla for 2–3 languages with menus, categories, basic content translation — 2–3 days.