{"id":72652,"date":"2025-09-26T07:27:12","date_gmt":"2025-09-26T13:27:12","guid":{"rendered":"https:\/\/www.scalahosting.com\/blog\/?p=72652"},"modified":"2025-11-24T02:55:02","modified_gmt":"2025-11-24T08:55:02","slug":"drupal-hosting-for-international-websites-localization-and-multilingual-considerations","status":"publish","type":"post","link":"https:\/\/www.scalahosting.com\/blog\/drupal-hosting-for-international-websites-localization-and-multilingual-considerations\/","title":{"rendered":"Drupal Multilingual Hosting: Localization Tips"},"content":{"rendered":"\n<p>Every visitor who can\u2019t read your site is a potential customer you\u2019ve lost. If you want to sell internationally or reach communities beyond your primary market, your Drupal site needs to speak their language \u2014 literally.<\/p>\n\n\n\n<p>First, it&#8217;s the web hosting account. You must find a reliable service that guarantees excellent performance worldwide.<\/p>\n\n\n\n<p>Then, it&#8217;s time to pick a <a href=\"https:\/\/www.scalahosting.com\/blog\/what-is-a-content-management-system\/\">content management system (CMS)<\/a>. Drupal is a worthy contender. It&#8217;s one of the most popular platforms of this kind, open-source, free, and easy to get used to.<\/p>\n\n\n\n<p>There are plenty of <strong>modules <\/strong>to help you build the functionality you want, so all that&#8217;s left is for you to produce the right content.<\/p>\n\n\n\n<p>The thing is, if you want your audience to span borders, you must ensure everyone understands what is written on your site.<\/p>\n\n\n\n<p>This means <strong>translating the website and enabling support for multiple languages<\/strong>. With most CMS solutions, this means installing a range of third-party plugins and spending hours configuring them. However, because you use Drupal, the process can be much simpler. Today, we&#8217;ll walk you through it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Turning a Website Into a Global Business Venture: Why Integrating Multilingual Functionality is Important<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"513\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Turning-a-Website-1140x513-1.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Turning a Website Into a Global Business Venture: Why Integrating Multilingual Functionality is Important\" class=\"wp-image-72656\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Turning-a-Website-1140x513-1.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Turning-a-Website-1140x513-1-300x135.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Turning-a-Website-1140x513-1-768x346.webp 768w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n<div class=\"shortcode-cta-oneline-wrap green row\">\r\n    <div class=\"shortcode-cta-content col-12\">\r\n        <div class=\"content\">\r\n            <div class=\"text\">With Drupal\u2019s built-in multilingual modules and a hosting platform optimized for fast global delivery, you can expand into new markets without sacrificing performance or user experience. ScalaHosting\u2019s CDN-ready infrastructure and multi-domain support make that process seamless from day one.<\/div>\r\n            <a\r\n                class=\"button blue cta-oneline\"\r\n                data-product=\"drupal-hosting\"\r\n                data-cta-banner=\"With Drupal\u2019s built-in multilingual modules and a hosting platform optimized for fast global delivery, you can expand into new markets without sacrificing performance or user experience. ScalaHosting\u2019s CDN-ready infrastructure and multi-domain support make that process seamless from day one.\"\r\n                data-cta-button=\"Learn More\"\r\n                href=\"https:\/\/www.scalahosting.com\/drupal-hosting.html\"\r\n            >Learn More<\/a>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\n\n\n\n<p>Some of you are probably wondering whether going through the effort of translating a website into multiple different languages is really worth it. And indeed, you can just about see a couple of arguments against it.<\/p>\n\n\n\n<p>Recent studies suggest that <strong>almost a fifth of the world&#8217;s population speaks English<\/strong> now, so we&#8217;re closer than ever to having something that resembles a universal language. For users who don&#8217;t understand it, there are<strong> automated translation tools<\/strong> that are getting better and better at accurately transmitting information in pretty much any language you can think of.<\/p>\n\n\n\n<p>Vendors now integrate these tools directly into their browsers, so users no longer need to copy-paste large blocks of text and open new windows. In light of this, introducing multiple languages to your website may seem like a bit of a pointless exercise.<\/p>\n\n\n\n<p>Often, however, doing it is well worth it.<\/p>\n\n\n\n<p>While many people speak and read English, you can&#8217;t merely discount the users who don&#8217;t, at least not if you want them to engage with your site. Automatic translators are indeed available, but relying on them is not a good idea for two main reasons.<\/p>\n\n\n\n<p>First, they&#8217;re still not perfect. Although they&#8217;ve come a long way, a machine will never be able to accurately translate all the semantic nuances that a text inevitably carries. Second, although auto translators are now integrated into most popular browsers, they still require a couple of additional clicks.&nbsp;<\/p>\n\n\n\n<p>So, the case for leaving your Drupal site in English only is already weaker, and when you consider the benefits of integrating multilingual functionality, you&#8217;ll see the scales tipping in the other direction. Let&#8217;s look at some of the main advantages.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Improved user experience<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Even if a person speaks English, allowing them to view your site in their native language will make it easier and more pleasant to use. This is critical if you want them to interact with your business.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Additional credibility<\/strong><\/li>\n<\/ul>\n\n\n\n<p>Translating the website into another language means you care about the people who speak it. It shows that you&#8217;re determined to enter that particular geographical region and you&#8217;re serious about doing business with it. This is bound to be noticed by the site&#8217;s visitors.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>A potential edge over the competition<\/strong><\/li>\n<\/ul>\n\n\n\n<p>If you introduce multilingual functionality on your website before your competitors, the improved user experience gives you a definitive advantage. You can be the first to conquer new markets and ensure users choose your products and services.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>More traffic and better SEO<\/strong><\/li>\n<\/ul>\n\n\n\n<p>The more languages you support, the more keywords you can target and the more search engine results pages you can appear on. This could have a tremendous effect on the volumes of organic traffic you attract.<\/p>\n\n\n\n<p>So, without further ado, let&#8217;s see how you turn a regular Drupal website into a global online portal translated into multiple languages.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Enabling Multilingual Modules in Drupal and Adding a Language<\/h2>\n\n\n\n<p>Up until a few years ago, multilingual integration on a Drupal site was only possible through so-called <strong>contributed modules<\/strong> &#8211; add-ons you download and install after you&#8217;ve set up the CMS. However, with <strong>Drupal 8<\/strong>, the modules were integrated into the core.<\/p>\n\n\n\n<p>So unlike WordPress and Joomla, where you have to find and set up third-party extensions, the functionality here is available out of the box. You just need to enable it.<\/p>\n\n\n\n<p>To do that, log in to your Drupal site with your administrator account and go to the <strong>Extend<\/strong> section of Drupal&#8217;s backend. Scroll down to the <strong>Multilingual <\/strong>section, where you&#8217;ll find four modules: <strong>Configuration Translation<\/strong>, <strong>Content Translation<\/strong>, <strong>Interface Translation<\/strong>, and <strong>Language<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"1101\" height=\"279\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/drupal-multilingual-modules.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language\" class=\"wp-image-72657\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/drupal-multilingual-modules.webp 1101w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/drupal-multilingual-modules-300x76.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/drupal-multilingual-modules-768x195.webp 768w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Select the checkboxes next to them, then scroll down to the bottom of the page and click <strong>Install<\/strong>.<\/p>\n\n\n\n<p>Next, it&#8217;s time to add a new language. Go to the <strong>Configuration<\/strong> page in the Drupal administration panel and locate the <strong>Regional and Language <\/strong>section.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"446\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/regional-and-language-1140x446.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 2\" class=\"wp-image-72658\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/regional-and-language-1140x446.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/regional-and-language-300x117.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/regional-and-language-768x300.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/regional-and-language.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Click <strong>Languages<\/strong>. You&#8217;ll see a list of the languages currently available on your site. In your case, it should contain English only. Above it is the <strong>Add Language<\/strong> button. Click on it.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"328\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/languages-1140x328.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 3\" class=\"wp-image-72660\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/languages-1140x328.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/languages-300x86.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/languages-768x221.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/languages.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Select your preferred language from the drop-down menu and click <strong>Add language<\/strong>. Drupal automatically downloads and imports everything it needs. The drop-down menu has over 100 languages, so in all likelihood, you&#8217;ll find what you&#8217;re looking for. If you don&#8217;t, a <strong>Custom language<\/strong> option is available at the very bottom of the list.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"251\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/add-language-1140x251.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 4\" class=\"wp-image-72661\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/add-language-1140x251.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/add-language-300x66.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/add-language-768x169.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/add-language.webp 1223w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>When done, you will be taken back to the list of installed languages. You can use the crosshairs to modify the order in which languages appear in the languages switcher block. From this page, you can also change the default language of your Drupal website. However, doing that is <strong>highly unadvisable if you don&#8217;t have previous experience,<\/strong> as it is possible to cause the entire site to break.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"431\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-list-1140x431.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 5\" class=\"wp-image-72662\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-list-1140x431.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-list-300x114.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-list-768x291.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-list.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Next, it&#8217;s time to <strong>add a language switcher block<\/strong> to the website&#8217;s front end. Go to the <strong>Structure<\/strong> section of the administration panel and click <strong>Block<\/strong> <strong>Layout<\/strong>. At the top of the page, you&#8217;ll see the Drupal themes installed on your site. Make sure the one you&#8217;re currently using is selected.&nbsp;<\/p>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"1004\" height=\"292\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/block-layout-theme.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 6\" class=\"wp-image-72663\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/block-layout-theme.webp 1004w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/block-layout-theme-300x87.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/block-layout-theme-768x223.webp 768w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Further down, you can see all the regions where you can place the language switcher block. Your choice depends on your personal preferences and the theme. More often than not, the switcher is located either in the sidebar or in the header. Pick the location and click the <strong>Place Block<\/strong> button.<\/p>\n\n\n\n<p>From the list, you need to find the <strong>Language Switcher <\/strong>entry and click the <strong>Place Block<\/strong> button next to it.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"703\" height=\"1123\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-switcher-place-block.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Enabling Multilingual Modules in Drupal and Adding a Language 7\" class=\"wp-image-72664\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-switcher-place-block.webp 703w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-switcher-place-block-188x300.webp 188w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>The popup that appears gives you a few options for deciding how the switcher block behaves. If you want the added languages to be available on all pages, you can leave the settings in their default state.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Translating Content<\/h2>\n\n\n\n<p>The <strong>Content Translation<\/strong> core module we enabled in the previous section lets you decide which parts of your website will be translatable. Open the <strong>Configuration<\/strong> page in Drupal&#8217;s administration panel, and under <strong>Regional and Language<\/strong>, click <strong>Content Language and Translation<\/strong>.<\/p>\n\n\n\n<p>You&#8217;ll see a list of all the entity types. By default, only the checkbox next to <strong>URL aliases <\/strong>is selected. Using the other checkboxes, you can make other entity types translatable.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"308\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-types-1140x308.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Translating Content\" class=\"wp-image-72665\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-types-1140x308.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-types-300x81.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-types-768x207.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-types.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>The ones you&#8217;re most likely interested in are <strong>Content<\/strong>, <strong>Content Block<\/strong>, and <strong>Custom Menu Link<\/strong>.<\/p>\n\n\n\n<p>Every checkbox you create opens a new set of configuration options under the list of entity types. Through these options, you can choose <strong>which subtypes and fields will be translatable<\/strong>.<\/p>\n\n\n\n<p>For example, after you select the <strong>Content<\/strong> checkbox, you&#8217;ll probably see checkboxes for translating articles and basic pages (the exact subtypes depend on your theme and modules). When you select a subtype, you can configure which fields will be translatable.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"912\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-subtypes-1140x912.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Translating Content 2\" class=\"wp-image-72666\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-subtypes-1140x912.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-subtypes-300x240.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-subtypes-768x615.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/content-subtypes.webp 1262w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Pretty much any field can be translatable, but in all likelihood, you don&#8217;t need all checkboxes to be selected.&nbsp;<\/p>\n\n\n\n<p>For example, if you&#8217;re configuring article translations, you need to make sure the <strong>title <\/strong>and the <strong>body <\/strong>are translatable. Your <strong>URL aliases<\/strong> and <strong>tags <\/strong>should also be available in the target language for SEO purposes. However, you most likely don&#8217;t need to translate the author&#8217;s name or the date the article was published, so you can leave those checkboxes empty. Make sure you select the <strong>Show Language Selector on Create and Edit Pages <\/strong>for each entity subtype you want to translate. This makes translation management easier.<\/p>\n\n\n\n<p>When you&#8217;re done, click <strong>Save Configuration<\/strong> to apply the changes. After that, when a user with content translation privileges views the entries in the <strong>Content <\/strong>section of your Drupal dashboard, they&#8217;ll have the <strong>Translate<\/strong> option under the <strong>Operations<\/strong> drop-down menu next to existing articles and pages.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"436\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/translate-article-1140x436.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Translating Content 3\" class=\"wp-image-72667\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/translate-article-1140x436.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/translate-article-300x115.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/translate-article-768x294.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/translate-article.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>When new content is added, a <strong>Language <\/strong>drop-down menu lets the author choose the language of the latest article or page.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">User Interface Translation<\/h2>\n\n\n\n<p>Translating the articles and pages won&#8217;t help much if the menus, buttons, and fields users interact with are in a language they don&#8217;t understand. That&#8217;s why, when we activated Drupal&#8217;s multilingual core modules, we also selected the checkbox next to <strong>Interface Translation<\/strong>.<\/p>\n\n\n\n<p>With it, you can translate everything users see on the front end, as well as all the tools and features in Drupal&#8217;s administration panel. Most of the work is done automatically when you add a language through <strong>Configuration <\/strong>&gt; <strong>Languages <\/strong>&gt; <strong>Add language<\/strong>.<\/p>\n\n\n\n<p>Remember the long list under the drop-down menu?&nbsp;<\/p>\n\n\n\n<p>For every entry, <strong>a translation is created and maintained by the Drupal community<\/strong>. On the list of installed languages, you can see how much of your website is covered by that translation.<\/p>\n\n\n\n<p>As you can see from the screenshot below, for example, the German translation is more complete than the Italian one.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"445\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/german-vs-italian-1-1140x445.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, User Interface Translation\" class=\"wp-image-72668\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/german-vs-italian-1-1140x445.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/german-vs-italian-1-300x117.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/german-vs-italian-1-768x300.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/german-vs-italian-1.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>The percentage figures you see on this page depend not only on the volume of time translators have spent working on the CMS but also on the modules you&#8217;ve installed. The more add-ons you have, the more elements you have to translate.<\/p>\n\n\n\n<p>If you click on the percentages in the <strong>Interface Translation <\/strong>column, you can complete or modify the installed translations.&nbsp;<\/p>\n\n\n\n<p>In basic terms, the translation is a large list of entries, each representing a string of text either on the front end or in Drupal&#8217;s administration panel. You can filter untranslated strings and complete them straight from the <strong>User Interface Translation <\/strong>page.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"559\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/user-interface-translation-1140x559.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, User Interface Translation 2\" class=\"wp-image-72669\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/user-interface-translation-1140x559.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/user-interface-translation-300x147.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/user-interface-translation-768x376.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/user-interface-translation.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Alternatively, you can click the <strong>Export<\/strong> tab and download the translation as a <strong>.po file<\/strong>. Plenty of free editors can help you translate the unfinished strings on your computer. When ready, you can upload the completed .po file and apply the chances through the <strong>Import <\/strong>tab.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Language Detection and Settings for Front End and Administration Pages in Drupal<\/h2>\n\n\n\n<p>If your site works in multiple languages, you&#8217;ll likely have several people accessing Drupal&#8217;s Administration Panel to add or edit translations. To make things easier for them, it&#8217;s best to ensure everyone sees the administration pages in their native language.<\/p>\n\n\n\n<p>To do that, go to the <strong>People<\/strong> section of the admin panel and click the <strong>Edit<\/strong> button next to the user account you want to change. Scroll down to the <strong>Language Settings<\/strong> section and pick the required language from the <strong>Administration Pages Language<\/strong> drop-down menu.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"952\" height=\"337\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/adminisrtation-pages-language.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal\" class=\"wp-image-72670\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/adminisrtation-pages-language.webp 952w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/adminisrtation-pages-language-300x106.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/adminisrtation-pages-language-768x272.webp 768w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>After you save the changes, the Drupal dashboard will be displayed in the language chosen by this particular account owner.<\/p>\n\n\n\n<p>For regular site visitors, it&#8217;s best to use the language detection functionality built into the multilingual core modules. To configure the feature, go back to the <strong>Configuration<\/strong> page and click <strong>Languages<\/strong> under the <strong>Regional and Language <\/strong>section.<\/p>\n\n\n\n<p>Open the <strong>Detection and Selection<\/strong> tab to see all available options.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"455\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/detection-and-selection-1140x455.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal 2\" class=\"wp-image-72671\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/detection-and-selection-1140x455.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/detection-and-selection-300x120.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/detection-and-selection-768x307.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/detection-and-selection.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Because you&#8217;ve already configured the accounts with access to the admin panel, the <strong>Account Administration Pages<\/strong> detection method is enabled. So is the <strong>URL <\/strong>method, i.e., Drupal knows what language to display thanks to the URL loaded in the user&#8217;s browser.<\/p>\n\n\n\n<p>If you click the <strong>Configure <\/strong>button, you can see and change how Drupal forms these URL addresses. By default, the CMS adds a path prefix to the URL to define the language. For example, German content is available under <em>domain.com\/de<\/em>, Italian translations are under <em>domain.com\/it<\/em>, etc.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"330\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/url-prefixes-1140x330.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal 3\" class=\"wp-image-72672\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/url-prefixes-1140x330.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/url-prefixes-300x87.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/url-prefixes-768x222.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/url-prefixes.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>If you click the <strong>Domain <\/strong>radio button at the top, you can also configure Drupal to use subdomains for different languages (i.e., <em>de.domain.com <\/em>for German, <em>it.domain.com <\/em>for Italian, etc.). Still, you need to make sure the subdomains are set up and pointing correctly.<\/p>\n\n\n\n<p class=\"alert-blue\"><strong>IMPORTANT:<\/strong> You shouldn&#8217;t forget that any changes you make to these particular settings could break existing URLs. If you have already uploaded some translated content, it&#8217;s best to keep URLs as they are. Even if you haven&#8217;t, be extremely careful when making changes to your live website.<\/p>\n\n\n\n<p>The next option on the <strong>Detection and Selection<\/strong> page is labeled <strong>Session<\/strong>. If enabled, Drupal can be configured to deliver translations based on a specific parameter in the user&#8217;s request. For example, if the request is for <em>domain.com\/language=de<\/em>, Drupal serves German translation; if it&#8217;s for <em>domain.com\/language=it<\/em>, it delivers content in Italian, etc.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"264\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/session-language-detection-1140x264.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal 4\" class=\"wp-image-72673\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/session-language-detection-1140x264.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/session-language-detection-300x70.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/session-language-detection-768x178.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/session-language-detection.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>The third option on the detection methods list is labeled <strong>User<\/strong>, and it&#8217;s down to the user&#8217;s personal preference according to their account settings.<\/p>\n\n\n\n<p>If you enable the <strong>Browser detection method<\/strong>, Drupal will determine which translation to serve based on the user&#8217;s browser UI language. The problem with this method is that browsers work differently, and their encoding isn&#8217;t always the same. For the most popular languages, you should see no problems, but if you&#8217;re not happy with the way the feature works, you can click the <strong>Configure <\/strong>button and assign specific codes to languages.<\/p>\n\n\n\n<p>The last detection method is called <strong>Selected Language<\/strong>. It&#8217;s always enabled, and it&#8217;s the fallback option that delivers the Drupal website in a language of your choice in case all other enabled methods don&#8217;t work. This is effectively a workaround to the problems you will inevitably encounter if you try to change the default language of your live site.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"229\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/selected-language-1140x229.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal 5\" class=\"wp-image-72674\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/selected-language-1140x229.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/selected-language-300x60.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/selected-language-768x154.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/selected-language.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>By default, the <strong>Selected Language<\/strong> option reverts everything back to English, but if you wish, you can change it to another language without breaking the entire website.<\/p>\n\n\n\n<p>Going back to the <strong>Detection and Selection<\/strong> page, you&#8217;ll see that the detection methods are arranged in a specific order, which determines their priority. Drupal will first use the topmost enabled detection method when deciding which translation to serve and will only move to the second one if the first is unsuccessful.<\/p>\n\n\n\n<p>You can rearrange the methods using the crosshairs on the left and determine which one has the most weight.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"320\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-detection-order-1140x320.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, Language Detection and Settings for Front End and Administration Pages in Drupal 6\" class=\"wp-image-72675\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-detection-order-1140x320.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-detection-order-300x84.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-detection-order-768x216.webp 768w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/language-detection-order.webp 1200w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>When you&#8217;re done, click <strong>Save settings<\/strong> and perform a few tests to make sure everything works.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">ScalaHosting and Multilingual Drupal Websites<\/h2>\n\n\n\n<figure class=\"wp-block-image size-full mpg-gallery\"><img decoding=\"async\" width=\"1140\" height=\"513\" src=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Scalahosting-1140x513-1.webp\" alt=\"Drupal Multilingual Hosting: Localization Tips, ScalaHosting and Multilingual Drupal Websites\" class=\"wp-image-72676\" srcset=\"https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Scalahosting-1140x513-1.webp 1140w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Scalahosting-1140x513-1-300x135.webp 300w, https:\/\/www.scalahosting.com\/blog\/wp-content\/uploads\/2025\/09\/Drupal-Hosting-for-International-Websites-Scalahosting-1140x513-1-768x346.webp 768w\" sizes=\"(max-width: 361px) 660px, (max-width: 767px) 89vw, (max-width: 1000px) 54vw, (max-width: 1071px) 910px, 1140px\" \/><\/figure>\n\n\n\n<p>Unlike many other website-building applications, Drupal&#8217;s multilingual features are available out of the box, so it&#8217;s much easier to start building your international online business. However, all your efforts will be in vain if you don&#8217;t deploy your website on <strong>a <\/strong><a href=\"https:\/\/www.scalahosting.com\/drupal-hosting.html\"><strong>reliable drupal hosting platform<\/strong><\/a>. This is where ScalaHosting comes in.<\/p>\n\n\n\n<p>A multilingual Drupal site isn\u2019t just about translations \u2014 it\u2019s about delivering them instantly to audiences across continents. ScalaHosting\u2019s global data centers, integrated Cloudflare CDN, and high-availability VPS clusters ensure that visitors in Berlin, S\u00e3o Paulo, or Tokyo see your site load as quickly as those in New York. Combined with multi-domain hosting and daily offsite backups, you can manage localized sites for each region with the same speed and security.<\/p>\n\n\n\n<p>The service is built on <strong>state-of-the-art hardware<\/strong>, giving you impeccable uptime stats. All but our cheapest plans support <strong>multiple domains hosted under the same account<\/strong>, so you can create your regional domains and further increase visibility. In the meantime, the <a href=\"https:\/\/www.scalahosting.com\/blog\/backups-and-disaster-recovery-strategies-in-managed-vps-hosting\/\">daily offsite backups<\/a> and our unique anti-malware system give you some much-needed peace of mind.<\/p>\n\n\n\n<p>All Drupal hosting packages include a control panel. Depending on the service type, you&#8217;ll work with either <strong>cPanel <\/strong>or <strong>SPanel <\/strong>&#8211; our proprietary server management platform. In both cases, you have easy Cloudflare integration, meaning you can easily use one of the world&#8217;s biggest <a href=\"https:\/\/www.scalahosting.com\/blog\/the-importance-of-a-cdn\/\">Content Delivery Networks (CDN)<\/a> to ensure page load times are consistent regardless of the visitor&#8217;s location.<\/p>\n\n\n\n<p>In other words, you have everything you need to start and grow your global business. When you make it big, you can still rely on us to offer a solution that will meet your needs. Our <a href=\"https:\/\/www.scalahosting.com\/cluster-hosting.html\">managed VPS clusters<\/a> give you <strong>true global high availability and blistering performance<\/strong>, which can be enjoyed in all corners of the globe.<\/p>\n\n\n<div class=\"shortcode-cta-oneline-wrap green row\">\r\n    <div class=\"shortcode-cta-content col-12\">\r\n        <div class=\"content\">\r\n            <div class=\"text\">Ready to make your Drupal site truly global? Let ScalaHosting handle the infrastructure while you focus on content and customers. Talk to our experts today and get your multilingual site online with global reach from day one.<\/div>\r\n            <a\r\n                class=\"button blue cta-oneline\"\r\n                data-product=\"drupal-hosting\"\r\n                data-cta-banner=\"Ready to make your Drupal site truly global? Let ScalaHosting handle the infrastructure while you focus on content and customers. Talk to our experts today and get your multilingual site online with global reach from day one.\"\r\n                data-cta-button=\"Learn More\"\r\n                href=\"https:\/\/www.scalahosting.com\/drupal-hosting.html\"\r\n            >Learn More<\/a>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusion<\/h2>\n\n\n\n<p>One of the great things about Drupal is the fact that you can use it for anything from a small personal blog to a massive online portal with a truly global reach. Its modular architecture allows you to easily enable a myriad of different features and functionality thanks to third-party add-ons.<\/p>\n\n\n\n<p>This is not unique among content management systems supported by the open-source community. However, with Drupal, you also have a range of<strong> built-in core modules<\/strong> that make the platform even more versatile. With them, options like enabling multilingual content on your site are as easy as clicking the mouse a few times. You just need to know where to look.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">FAQ<\/h2>\n\n\n\n<p><strong>Q: Does Drupal support multilingual content?<\/strong><\/p>\n\n\n\n<p><strong>A:<\/strong> Yes, it does. In fact, because the multilingual modules are embedded into the core, Drupal is hailed as one of the best open-source CMS platforms in that respect.<\/p>\n\n\n\n<p><strong>Q: How do I create a multilingual site in Drupal?<\/strong><\/p>\n\n\n\n<p><strong>A:<\/strong> Your Drupal site&#8217;s multilingual capabilities depend on four modules: <strong>Configuration translation<\/strong>, <strong>Content translation<\/strong>, <strong>Interface translation<\/strong>, and <strong>Language<\/strong>. They are shipped with the Drupal core but are not enabled by default. After you turn them on, it&#8217;s a matter of configuring them to work with your translations.<\/p>\n\n\n\n<p><strong>Q: What languages does Drupal support?<\/strong><\/p>\n\n\n\n<p><strong>A:<\/strong> Drupal supports<strong> over 100 languages<\/strong>. After you enable the multilingual modules, you can install the ones you need from the administration panel. If the language you need is not on the list, you can create your own translation and even share it with the community.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Every visitor who can\u2019t read your site is a potential customer you\u2019ve lost. If you want to sell internationally or &#8230;<\/p>\n","protected":false},"author":113,"featured_media":72655,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_seopress_robots_primary_cat":"none","_seopress_titles_title":"Drupal Multilingual Hosting: Localization Tips | ScalaHosting Blog","_seopress_titles_desc":"A multilingual Drupal website can help you expand your reach and conquer new markets. Stick around to find out how.","_seopress_robots_index":"","footnotes":""},"categories":[127],"tags":[],"class_list":["post-72652","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-drupal-hosting"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/posts\/72652","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/users\/113"}],"replies":[{"embeddable":true,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/comments?post=72652"}],"version-history":[{"count":3,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/posts\/72652\/revisions"}],"predecessor-version":[{"id":73310,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/posts\/72652\/revisions\/73310"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/media\/72655"}],"wp:attachment":[{"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/media?parent=72652"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/categories?post=72652"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.scalahosting.com\/blog\/wp-json\/wp\/v2\/tags?post=72652"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}