Internationalization & Localization for WordPress: Building Multi-Language Sites
Growing beyond English-speaking markets? Building a global WordPress presence requires more than translation. This guide covers i18n/l10n strategy, plugin options, SEO implications, and testing workflows for multi-language WordPress sites.
i18n vs. L10n: What's the Difference?

These terms are often confused:
- Internationalization (i18n): Designing your site/code/content to be language-agnostic. Preparing infrastructure to support multiple languages. Example: marking strings in code as translatable, using
__('String', 'textdomain')so translators can identify what needs translating - Localization (l10n): Adapting your site to specific languages and regions. Translation is part of it, but also cultural adaptation (date formats, currency, payment methods, local imagery, regional references)
In practice: A pure translation (English → French) of English text is localization. But true localization also considers French cultural context (French payment methods, French imagery, French regional conventions).
WordPress context: Your WordPress theme/plugins should be internationalized (code supports translation strings). Your content/site should be localized (translated + culturally adapted for each market).
Approaches to Multi-Language WordPress
Approach 1: Single Site + Translation Plugin (Simpler)
How it works: One WordPress install; plugin manages language switching and translation.
Popular plugins: WPML (Website Maintenance Language), Polylang, Weglot
- Pros: Simple to set up, easier initial maintenance, lower hosting cost (one WordPress install)
- Cons: Plugin overhead (every pageload processes language detection/switching), translation management centralized in one database (harder to scale to many languages), SEO slightly more complex
Approach 2: WordPress Multisite + Subdomains (Scalable)
How it works: Separate WordPress install per language (english.example.com, french.example.com, spanish.example.com). All connected via WordPress Multisite.
- Pros: Each language version is independent (easier to manage, scale, customize). Better SEO separation (each domain gets distinct ranking). Each site can be optimized for its audience independently
- Cons: Multisite complexity (more infrastructure), higher hosting cost, maintenance overhead increases with each language, content sync across sites requires workflow
When to choose multisite: 5+ languages, large teams, high traffic per language, need for independent customization per region
Approach 3: Separate WordPress Installs (Maximum Flexibility)
How it works: Completely independent WordPress sites per language region. No connection between installs.
- Pros: Complete independence, can customize fully per region, no risk of one language version affecting another
- Cons: Highest complexity, maintenance burden multiplied (updates, content sync, design changes replicated across 5+ installs), highest hosting cost
When to choose: Very large enterprise teams, completely different products/messaging per region, completely different teams managing each region
Recommendation for most: Start with single site + translation plugin (WPML or Polylang). Migrate to multisite if you need true regional independence.
Implementing Multi-Language with WPML or Polylang
WPML Setup (Most Popular)
- Install WPML plugin; activate license
- Define languages (English primary, add French, Spanish, German, etc.)
- Set up language switcher widget/menu
- Tell WPML which content you want translated (posts, pages, custom post types)
- Use WPML Translation Editor or send to professional translator
- Publish translations
Polylang Setup (Open Source Alternative)
- Install Polylang plugin (free or Pro)
- Add languages (English primary, add French, Spanish, etc.)
- Set language switcher location
- Create posts in primary language, then create translated versions (Polylang creates linked posts per language)
- Use Polylang’s export feature to send to translators, then import translations
- Publish
Content Strategy: Translating vs. Localizing
Translation trap: Don’t just machine-translate (Google Translate) everything. Quality suffers, nuance is lost, cultural context disappears.
Best practice: Professional human translation or hybrid (machine translate as draft, then professional review).
Localization considerations:
- Currency and payment: French site displays EUR, offers French payment methods (CB, SEPA). German site displays EUR and German methods
- Date/time formats: US: 12/31/2026; Europe: 31/12/2026. WordPress locale settings handle this
- Legal/compliance: GDPR for EU sites, CCPA for California, regional data protection laws. Each version might need different privacy policy or consent workflows
- Customer support language: Support chatbot, email support, contact forms should respond in local language
- Regional imagery: Cultural references, imagery choices might differ by region. A hero image of a US office might not resonate with French audience
SEO for Multi-Language WordPress
Google’s guidance: Clearly signal which language each page targets.
hreflang Tags (Essential)
hreflang tells Google: “This page is English; if a user prefers Spanish, here’s the Spanish version; if they prefer German, here’s German version.”
Example:
<!-- On English page: -->
<link rel="alternate" hreflang="en" href="https://example.com/page/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/page/" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page/" />
<!-- On Spanish page: -->
<link rel="alternate" hreflang="es" href="https://example.com/es/page/" />
<link rel="alternate" hreflang="en" href="https://example.com/page/" />
<link rel="alternate" hreflang="de" href="https://example.com/de/page/" />
WPML and Polylang automatically generate hreflang tags. Verify they’re present: View page source, search for “hreflang”.
URL Structure
Option 1: Subdomains
en.example.com (English)
fr.example.com (French)
de.example.com (German)
Option 2: Subfolders (recommended by Google)
example.com/en/ (English)
example.com/fr/ (French)
example.com/de/ (German)
Google slightly prefers subfolders because they consolidate authority under one root domain.
Search Console Setup
- Add each language version to Google Search Console (if using subdomains, add each as separate property)
- Submit XML sitemaps per language language
- Monitor indexation per language (is Google indexing all language versions?)
Keyword Research Per Language/Region
Don’t assume English keywords translate directly. Keyword opportunity varies by market.
- Research keywords in French; create French content targeting French search volume
- Research keywords in German; create German content targeting German search volume
- Regional variations matter: “ecommerce platform” ≠ “plateforme ecommerce” in search volume, competition, intent
Ahrefs, Semrush, and Google Keyword Planner all support multilingual keyword research.
Testing Multi-Language WordPress Sites
Language Switching Test
- Click language switcher (menu, widget, flag icon)
- Verify page switches to correct language
- Verify hreflang tags point to correct language page
- Verify URL structure is correct (subdomain or subfolder reflects language)
Translation Quality Test
- Spot-check translations for accuracy, tone, cultural fit
- Verify no English text leaked into translated pages
- Check formatting (special characters, line breaks, emphasis)
- Verify CTAs are translated (not “Click Here” in English on French page)
Form and Submission Test
- Fill out a contact form in each language; verify submission works
- Check email confirmation; is it in the correct language?
- Verify database stores language metadata (which language was the form filled in?)
Performance Testing Per Language
- Test Core Web Vitals on English version; note LCP, INP, CLS
- Test Core Web Vitals on French version; note if performance differs (sometimes translation plugin adds overhead)
- Identify performance bottlenecks specific to translation plugin
Currency and Regional Data Test
- Verify French version displays EUR currency, not USD
- Verify date formats are correct per region
- Verify payment methods shown match region (French credit card providers for FR, German for DE)
Common Pitfalls to Avoid
- Machine translation without review: Google Translate is fast but makes mistakes. Always have native speaker review
- Missing hreflang tags: Google won’t understand your language structure; pages compete with each other, cannibalizing rankings
- Duplicate content: If French page is just machine-translated English page, Google might penalize as duplicate content (even though it’s translated). Ensure each language has quality, unique content
- Inconsistent URL structure: Some pages using subfolders, others using subdomains. Keep structure consistent across all language versions
- Forgetting SEO per language: You optimized English for “best ecommerce platform.” Did you optimize French for “meilleure plateforme ecommerce”?
- Not testing forms/payments in local language: Currency, paymentz, compliance requirements differ. Test each language version as if you’re a local user
Multi-Language WordPress Checklist
- ☐ Define business goals (which languages/regions are priority?)
- ☐ Choose approach: plugin-based (WPML/Polylang) or multisite
- ☐ Install and configure translation plugin or multisite structure
- ☐ Define content to translate (all posts/pages? custom post types?)
- ☐ Hire professional translators or review machine translation
- ☐ Create translated content versions
- ☐ Verify hreflang tags are present and correct
- ☐ Set up language switcher (visible, intuitive)
- ☐ Localize currency, payment methods, date/time formats per language
- ☐ Research keywords in each language; create language-specific SEO strategies
- ☐ Set up Google Search Console for each language version
- ☐ Test language switching, translation quality, forms, payments
- ☐ Monitor Core Web Vitals per language version
- ☐ Document translation workflow for future content (how are new posts translated?)
Key Takeaways
- Internationalization (i18n) = infrastructure for multiple languages; localization (l10n) = translation + cultural adaptation
- Choose your approach: single site + plugin (simpler), multisite (scalable), or separate installs (complex)
- WPML and Polylang are leading solutions; WPML more feature-rich, Polylang more lightweight
- hreflang tags are essential; they tell Google which language each page targets
- Localization goes beyond translation: currency, payments, date formats, regional compliance all differ by market
- Keyword research varies per language/region; don’t assume English keywords translate directly
- Always test each language version (switching, translations, forms, payments, Core Web Vitals)
- Professional translators beat machine translation; if using machine translation, always review with native speaker
Build Your Global WordPress Presence
Expanding to new markets? We help set up WordPress multisite infrastructure, implement WPML or Polylang, handle SEO strategy per language, and guide translation workflows. Let’s Go Global
