Polylang guide
This guide walks you through setting up Polylang with Milano. Polylang lets you run a store in multiple languages. Each language gets its own pages, products, and menus.
The core Polylang plugin is free. You need the paid Polylang for WooCommerce addon to translate products, categories, and other WooCommerce data.
What you will build
Section titled “What you will build”A multilingual Milano store where visitors can switch between languages. Each language has its own homepage, product catalog, and navigation menu.
What you will need
Section titled “What you will need”- Milano theme installed and active.
- WooCommerce installed if you are running a store.
- Polylang (free) from the WordPress plugin directory.
- Polylang for WooCommerce (paid) if you need to translate products.
Step 1 — Install and configure Polylang
Section titled “Step 1 — Install and configure Polylang”- Go to Plugins → Add New Plugin in your WordPress admin.
- Search for “Polylang”.
- Click Install Now on the Polylang result by WP SYNTEX.
- Click Activate.
- The Polylang setup wizard opens automatically. If it does not, go to Languages in your admin sidebar.
Step 2 — Set up languages
Section titled “Step 2 — Set up languages”The setup wizard walks you through language configuration.
- Choose your default language. This is the language your existing content is in.
- Add the languages you want to support. Use the search box to find a language quickly.
- Choose the URL format for your languages:
- Language code in the URL —
yoursite.com/en/andyoursite.com/fr/. This is the recommended option. - Subdomain —
en.yoursite.comandfr.yoursite.com. You need wildcard subdomain support from your host. - Domain —
yoursite.comandyoursite.fr. You need separate domains.
- Language code in the URL —
- Decide whether to detect the browser language. Turning this on sends visitors to their browser language automatically.
- Click Continue to save.
Step 3 — Translate pages and products
Section titled “Step 3 — Translate pages and products”Translate pages
Section titled “Translate pages”- Go to Pages → All Pages.
- You will see flag icons next to each page. Hover over a flag and click the plus icon to add a translation.
- The translation editor opens with a blank page.
- Enter your translated title and content. You can copy content from the original and translate it yourself, or write from scratch.
- Click Publish.
Translate products
Section titled “Translate products”You need Polylang for WooCommerce to translate products. Without it, products appear in all languages with the same content.
- Install and activate Polylang for WooCommerce from your Polylang account.
- Go to Products → All Products.
- Click the plus icon under the target language flag.
- Fill in the translated product title, description, price, and other fields.
- Click Publish.
Translate product categories
Section titled “Translate product categories”- Go to Products → Categories.
- You will see language columns next to each category.
- Click the plus icon to add a translation for a category.
- Enter the translated name and description.
- Click Add new category.
Step 4 — Translate theme strings
Section titled “Step 4 — Translate theme strings”Polylang does not translate theme strings on its own. You have two options.
Option 1 — Use Loco Translate with Polylang
Section titled “Option 1 — Use Loco Translate with Polylang”This is the most common approach.
- Install Loco Translate (free) from the WordPress plugin directory.
- Go to Loco Translate → Themes and click “Milano”.
- Create a new language for each language you set up in Polylang.
- Translate the strings you need.
- Save to the custom location so updates do not overwrite your work.
See the full Loco Translate guide for step-by-step instructions.
Option 2 — Use Polylang’s string translation
Section titled “Option 2 — Use Polylang’s string translation”Polylang has a built-in string translation screen for some theme text.
- Go to Languages → String translations in your admin.
- You will see a list of translatable strings.
- Click the text box under each language flag and type your translation.
- Click Save changes.
Step 5 — Set up the language switcher in Milano
Section titled “Step 5 — Set up the language switcher in Milano”Polylang adds a language switcher widget you can place in your header or footer.
Add to a menu
Section titled “Add to a menu”- Go to Appearance → Menus.
- Select the menu you want to edit.
- Find the “Language switcher” panel on the left.
- Check the languages you want to show and click Add to menu.
- Drag the switcher to your preferred position.
- Click Save Menu.
Add through the Customizer
Section titled “Add through the Customizer”- Go to Appearance → Customize.
- Find the header or footer builder section.
- Add the Polylang language switcher widget.
- Configure the display options. You can show flags, language names, or both.
- Click Publish.
Recommended settings for Milano
Section titled “Recommended settings for Milano”These settings work well with Milano’s header and footer builder.
| Setting | Recommended value | Why |
|---|---|---|
| URL format | Language code in URL | Works with every host and needs no extra setup |
| Language switcher | Menu item | Fits naturally in Milano’s header builder |
| Hide translations without content | Turn on | Prevents visitors from landing on empty pages |
| Browser language detection | Turn off | Lets visitors choose their language instead of assuming |
| Media translation | Turn off | Images usually do not need translating. Saves disk space |
Troubleshooting
Section titled “Troubleshooting”Problem: The language switcher does not appear.
Fix: Check that you added the switcher to the correct menu. Go to Appearance → Menus and confirm the language switcher items are in the menu assigned to the header location. If you use Milano’s header builder, add the Polylang widget through the Customizer instead.
Problem: Products show in all languages with the same content.
Fix: You need Polylang for WooCommerce. The free Polylang plugin does not translate WooCommerce data. Buy the addon from polylang.pro, install it, and then translate each product.
Problem: Theme strings still show in English after translation.
Fix: If you used Loco Translate, check that you saved to the custom location. If you used Polylang’s string translation, some theme strings may not register there. Switch to Loco Translate for full coverage.
Problem: Translated products lose their connection to the original.
Fix: When creating a translation, make sure you use the plus icon from the original product. This links the translation to the source. If you create a new product manually, Polylang does not know it is a translation.