[Meta] Proposal for multilingual installation

Created on 12 March 2025, 4 months ago

Problem/Motivation

As a non-native English speaker, I would like to create a new Drupal CMS site in a language other than the default (English). I would also like to be able to translate the entire site or only specific parts of it into a different language.

Background

Drupal has good support for creating websites using other languages than English.

When creating a new site using Drupal core, the very first page of the installer presents the user with the language select. For those people who do not speak English, this step allows them to choose the language they are most comfortable with, and Drupal core proceeds installing in the selected language.

There is an open issue → though to improve the UX of this initial page even further, since everything else on that page, including the submit button is written in English, and that does not change when the language selector is changed. Only after the user has proceeded to the next step in the installer would the language change to their preferred language.

When creating a new site using Drupal CMS, there was initially an option to select the language as we can see on the original designs of the installer.

However, this language dropdown had to be removed from the installer because after selecting a different language in the installer, Drupal core would install in the selected language, but most of the other config provided by Drupal CMS would remain in English since it was hardcoded. As a result, the final site ended up with mixed config in different languages, for example:

  • Anonymous and administrator roles will be in the default language, but the content_editor would be in EN language.
  • Core menus will be in default language, but the Welcome menu will be in EN language.

More information about this issue can be seen here 📌 Consider removing languages from the installer Active .

Another issue regarding the Drupal CMS installer where the UX is reviewed is: [meta] Improve the accessibility of the Drupal CMS installer → .

Proposed resolution

In order to progress with the implementation of multilingual functionality in Drupal CMS, two main use cases have been defined: installing a site in a single non-English language (case 1) and installing a site with multiple languages (case 2).

Case 1: Installing a site in a single non-English language (French)

Considering the problems described on the issue Remove languages from the installer 📌 Consider removing languages from the installer Active , and Make recipes translatable, the recommendation for this case is to find a quick fix instead of perfect fix that could take a lot of time and less value. Ideally creating a contrib module and later getting it added to Drupal core would be fastest for Drupal CMS.

A task related with this case is the one about making recipes translatable ✨ Make recipes translatable Active .

Case 2: Installing a site with multiple languages (English and Spanish)

The phases planned to elaborate a proposal with a solution that allows to install a site with multiple languages are the following:

This phase will focus on defining user needs and exploring technical possibilities. To achieve this, we will follow these steps:

  • Analyze Drupal's current capabilities to understand the options and complexities of setting up a multilingual Drupal site.

    From the initial interactions a few questions raised:

    • What happens if the user selects a language that they might not understand? (e.g. Japanese). How do we make sure that the user understands the language selected?

      The idea will be to be aligned to Drupal Core behaviour where the installer changes the language when a new language is selected.

      Although it is not implemented yet, there is a proposal → to modify the language of the page or the next button that takes us to the next screen before we even click on that button

  • Based on initial assumptions, define common use cases. Feasibility of creating a recipe for them should be taken into account:

    1. Translate a site in multiple languages (translate everything 1-1; e.g. From English to Spanish).
    2. Translate a subsite into another language (e.g. Main site in English and subsite in Spanish). Different architecture? (To be defined later, for future)
    3. Translate the user interface but not the content (To be defined later, for future.).
    4. Advanced configuration: Options like the ones presented in /admin/config/regional/content-language should go under this section.
  • To support the previous assumptions and gather feedback on alternative multilingual configurations it would be good to create a survey with 4 to 10 options to pick from to be completed by the Drupal community (this will be postponed until the first use case [1-1] is implemented)

  • User workflows definition:

    In order to move the user as quickly as possible through the installation process, it has been suggested that the most optimal place to allow the user to implement the multilingual functionality to the new site created is by creating a recipe and adding it to the Recommended add-ons section of the dashboard where the user lands at the end of the installation process.

  • Create an issue with the recipe proposal so that the Leadership Team can decide on whether to go forward with the implementation.
  • Create an issue to put back the language selector into the Drupal CMS installer. This selector was removed in the issue Remove languages from the installer → .

TBD

What will be the outcome?

  • Improved Accessibility & Inclusivity: More users can engage with the content in their preferred language, making the site more inclusive.
  • Improve conversion rates: Supporting multiple languages attracts a wider audience, including international users and diverse communities.
  • Boosts search engine visibility: Multilingual sites can rank higher in search engines for different language queries, improving discoverability.
  • Localization & Cultural Relevance: Users can experience content in a way that resonates culturally, increasing engagement and satisfaction.

User interface for case 2

TBD

Team and resources

We are working on the #drupal-cms-multilingual on Drupal Slack.

Current team:

  • Jose Reyero (Solution definition and architecture) – available ~15h/week
  • Anjali Rathod (Development) – available ~15h/week
  • Yolanda Górriz (Project management, UX research and wireframing) – available ~15h/week
  • Gábor Hojtsy has offered his assistance on a case-by-case basis.
  • Cristina Chumillas (TBD)
  • If you are planning on committing some time towards this idea, feel free to add yourself to this list! 🤗
🌱 Plan
Status

Active

Component

Track: Multilingual Content

Created by

🇪🇸Spain ygoex

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024