Home » Blog » How to Build a Multilingual WordPress Site When Your Business Expands Into New Countries

How to Build a Multilingual WordPress Site When Your Business Expands Into New Countries

Contributor: Emma Khanamiryan Posted on

When a business starts selling or hiring in a new country, it has to adapt its website for a new audience. Visitors expect to read in their own language, pay in their own currency and find local contact details.

On WordPress, you can add languages, local prices, consent banners and country-specific pages with plugins, without rebuilding your site.

Why translate your WordPress site for a new market

Multilingual WordPress

Translate your site because visitors in the new market prefer to buy in their own language. Some will not buy from a site in another language at all.

CSA Research surveyed 8,709 consumers in 29 countries in 2020, according to its press release on the study. In that survey, 76% of online shoppers preferred to buy products with information in their native language. Of the same shoppers, 40% said they would never buy from websites in other languages.

With a translated site, you can also rank in local search. Google treats each language version as a separate page, so Spanish speakers can find your Spanish page when they search in Spanish.

How to choose a translation plugin for WordPress

Choose a plugin based on how you will translate, how it builds language URLs and whether it works with the other plugins on your site.

With WPML or Polylang, you translate each page in a separate editor, or hand the work to a translator. With TranslatePress, you edit translations on the live page and can connect a machine translation service. Some plugin makers leave out automatic translation entirely. The WPGlobus team, for example, states on its WordPress.org page that the plugin does not translate texts.

Check these points before you install one:

  • URL structure: you want a separate URL for each language, such as example.com/es/.
  • SEO fields: you should be able to translate page titles, meta descriptions and image alt text.
  • WooCommerce support: buyers should see product names, checkout text and order emails in their language.
  • Compatibility: test the plugin with your theme, page builder and form plugin on a staging site.
  • Machine translation costs: some plugin makers charge by the number of words translated each month.

If you use machine translation, plan a human review for key pages such as checkout, pricing and legal pages. In WPGlob’s interview on building verified translation into an MCP connector, Tomedes’ AI lead explains why some teams add a human check to AI output. You can compare other options in the WPGlob plugin directory.

How to set up language URLs and hreflang tags

Give each language its own URL and add hreflang tags, the code that marks each page’s language and region for search engines.

You can set up language URLs in three ways:

1. Subdirectories: example.com/es/. You manage one site, and the new language uses the domain you already have.

2. Subdomains: es.example.com. You can host each language separately, but you manage more settings.

3. Country domains: example.es. Visitors see a clear local signal, but you register and maintain a domain for each country.

A small team can start with subdirectories, since they keep one domain and one hosting account. Google explains how to mark up each version in its guide to localized versions of pages. After setup, open the page source and check that each page lists its hreflang tags.

Avoid redirecting visitors to a language based on their IP address. Let them choose from a language switcher, and remember their choice.

How to show prices in local currencies

Use a multi-currency plugin with WooCommerce, and set fixed prices for your main products in each currency.

With a currency switcher, visitors can see prices in their own currency. You can convert prices automatically from an exchange rate, or set a fixed price in each currency, such as €49 and £45. With fixed prices, customers see the same price from week to week.

Check with your payment provider that you can accept each currency you show. Then test a full purchase in each currency, from the product page to the order confirmation email.

How to translate course listings and booking forms

Translate the course data where it lives, then check that each booking step appears in the visitor’s language.

Some training providers manage courses outside WordPress. A provider that keeps its course dates, venues and prices intraining management software can show them on its site through a connector plugin. MultiNet Interactive, the company that develops EduAdmin, maintains an EduAdmin Booking plugin on WordPress.org. Training providers that use EduAdmin connect the plugin to their account with an API key. They then add booking pages to their site with its shortcodes, so visitors can book courses and programmes there. 

Say a UK training provider starts selling its project management courses in Germany. It adds German course titles and descriptions in its course system and shows prices in euros. It also translates the booking form labels and confirmation emails, and creates a German booking page. Before launch, the team books one course in each language to check the form, the confirmation email and the invoice.

How to set up cookie consent for each country

Show the consent banner in the visitor’s language and follow the rules of their region.

In the EU and UK, you must get visitors’ consent before you set non-essential cookies. With some consent plugins, you can show a different banner depending on the visitor’s region. Translate the banner text, the cookie policy and the privacy policy for each language. You can compare options in WPGlob’s list of the best cookie consent plugins for WordPress.

How to add local contact details

Give visitors a local way to reach you, with support hours in their time zone.

Add a local phone number or email address for each market, and an office address if you have one. Show support hours in local time, such as “Monday to Friday, 9:00 to 17:00 CET”. If you show customer reviews, include some from customers in the new country once you have them, and translate the labels around them.

How to add a local careers page

Create a careers page in each language and list jobs with a job board plugin. Add job posting markup, so Google can show the roles in its job search.

Decide how you will employ people in the new country before you publish roles there. Some companies open a branch office or a foreign subsidiary. Others start with an employer of record, a company that employs staff under local law and charges a fee for each employee. You will name the employer and list the benefits in each job post, so decide this first.

With job board plugins such as Simple Job Board and WP Job Manager, you can publish roles with a location, salary and application form. Google lists the fields it reads in its job posting structured data guide. For a custom application form, see WPGlob’s Easy Form Builder review.

How to keep translations up to date

Assign one person to each language, and update translations whenever the original page changes.

Keep a simple list of pages, languages and the date of the last update. When you change a price, a policy or a product description, update each language version the same week. Once a month, click through the main pages in each language to find untranslated text, broken links or old prices.

Summary: building a multilingual WordPress site

Pick a translation plugin that fits how you translate, give each language its own URL and add hreflang tags. Show local prices, translate booking forms and consent banners, and build a careers page for each country once you know how you will employ people there. Review each language version on a set schedule.

Click here for more.

Emma Khanamiryan is a skilled content writer with a passion for crafting engaging, informative, and SEO-friendly content. With a keen eye for detail and a talent for turning complex ideas into accessible stories, Emma helps businesses and readers connect through words.