Customize URLs, Slugs, and SEO in WPML – Directory Format, Hreflang, Slug Translation
Customize how WPML builds the URLs for translated content on your WordPress site and what it sends search engines about your multilingual structure: pick a URL format (directories, separate domains, or query parameters), translate the slug of each post, control hreflang in the page head, and configure browser-language redirects.
What WPML Does for Multilingual SEO Out of the Box
Without you touching any setting, a fresh WPML install gives you most of what Google needs to rank multilingual content properly:
- hreflang tags in the
<head>. WPML automatically inserts<link rel="alternate" hreflang="...">tags pointing every page to its translations. Google uses hreflang to serve the right language to the right user. Without it, you risk your French page showing up to English searchers and the same content being treated as duplicate. WPML emits these by default, positioned as early as possible in the HEAD (the recommended placement). - Clean, indexable URLs per language. Whichever URL format you pick (see below), the translated pages live at addresses search engines can crawl and index.
- Per-language sitemaps when used alongside an SEO plugin like Yoast SEO or RankMath.
The WPML SEO add-on extends this with translation of the SEO meta fields your SEO plugin attaches to each post: titles, descriptions, social tags, breadcrumb labels, and (for Yoast SEO) taxonomy term meta. See WPML SEO – Multilingual Yoast SEO and Rank Math for the overview, and How to translate your site for multilingual SEO for the step-by-step.
The settings below let you tune the structure further.
Where the Settings Live
Open WPML > Settings > URLs and SEO.
Language URL Format
Three structures for how the language shows up in your URLs. Pick once at setup. Switching later is involved and breaks inbound links.
Different Languages in Directories
yoursite.com/fr/contact/ for French, yoursite.com/de/contact/ for German.
The default and most common choice. Works with the widest range of themes and plugins. From an SEO perspective, this format keeps all language versions on the same domain, which lets Google group them cleanly and consolidate ranking signals across languages. Most multilingual sites use this format.
A sub-option, Use directory for default language, decides whether the default-language URL lives at the root (yoursite.com/) or in a directory (yoursite.com/en/). Off by default. Most sites keep the original-language URL at the root.
A Different Domain per Language
yoursite.fr for French, yoursite.de for German.
Useful when you operate distinct market sites with separate brand presences per country. SEO benefit: you can geo-target each domain to a specific country in Google Search Console, which is a stronger signal than directory-level geo-targeting. The trade-off is more setup work (DNS, hosting, SSL per domain) and ranking signals don’t accumulate across domains the way they do under a single domain.
Language Name Added as a Parameter
yoursite.com/?lang=fr.
The least recommended option. Some themes and plugins don’t handle query-parameter URLs well, and parameter-based URLs are messier from an SEO perspective. Useful only when constraints prevent the other two formats.
How the Slug of a Translated Post Is Generated
The Page URL section of WPML > Settings > URLs and SEO has four options for how each translation’s slug is built. Pick one per site; the choice applies to every translated post.
- Auto-generate from title (default). WordPress builds the slug from the translated title. Clean and zero-effort.
- Always auto-generate from title and overwrite any existing slug. Every time a title changes, WPML rebuilds the slug to match. Useful when you want titles and slugs to stay locked together. Avoid this when you’ve hand-tuned slugs for SEO, because each title edit will overwrite them.
- Translate (this will include the slug in the translation and not create it automatically from the title). The slug becomes part of the translation editor, so a translator can override the auto-generated value. SEO benefit: when target-language keywords matter to your ranking, having the slug in the target language carries the keyword into the URL. yoursite.com/fr/contact/ becomes yoursite.com/fr/contactez-nous/. For sites where multilingual SEO matters, this is the option to pick. For languages whose script is not Latin (Hebrew, Arabic, Chinese, and so on), WPML automatically transliterates the slug into Latin letters – see the next section.
- Copy from original language if translation language uses encoded URLs. A fallback for languages whose slugs would otherwise come out as percent-encoded characters. The source-language slug is reused across all translations for legibility. Pick this when you want every language version to share the same slug.
For custom post types and taxonomies, the base slugs (the /category/, /product/, /tag/ prefixes) are translated separately. WPML translates them from the Taxonomy tab in Translations.
How WPML Translates Slugs for Hebrew, Arabic, Chinese, and Other Non-Latin Languages
When you pick Translate in the Page URL section and the target language uses a script other than Latin – Hebrew, Arabic, Chinese, Japanese, Korean, Russian, Greek, Thai, and so on – WPML writes the slug in Latin letters that match how the translation sounds. This is called transliteration.
URLs can’t reliably show non-Latin characters. Browsers and servers handle them as long percent-encoded strings that don’t copy, paste, or share well. Transliteration produces a short, readable URL in Latin letters instead, so visitors can recognize and share the link and search engines index one clean URL per language.
For the page title WPML Activation:
- Hebrew title
הפעלת WPMLbecomes URL/he/hafalat-wpml/ - Chinese title
激活 WPMLbecomes URL/zh/jihuo-wpml/
Transliteration runs automatically and consistently across every non-Latin language on your site. You don’t configure it per language. The choice is at the site level: pick Translate to get transliteration, or pick Copy from original language if translation language uses encoded URLs to keep the source-language slug across every translation.
Hreflang in the HEAD
The SEO Options card has two settings for hreflang:
- Display alternative languages in the HEAD section. On by default. WPML outputs
<link rel="alternate" hreflang="...">for every translated version of the current page. - Position of hreflang links. As early as possible (default) places the tags near the top of the HEAD, where search engines tend to read first. The setting accommodates themes or SEO plugins that put their own tags in specific positions.
Leave both on unless you have a specific reason to disable them. Google’s documentation calls hreflang a foundational signal for multilingual sites.
Browser Language Redirect
When a visitor arrives at a URL in one language but their browser’s preferred language is another, WPML can redirect them to the translated version. Three options:
- Disabled (default). No redirect; the visitor sees the URL they requested.
- Only if a translation exists. WPML checks for a translation in the visitor’s browser language and redirects only when one exists. Most users want this if they want browser-redirect at all.
- Always. Even when there’s no translation in the visitor’s browser language, WPML redirects to that language’s home page. Aggressive. Visitors may end up on a generic home page instead of the content they were trying to reach.
The redirect uses JavaScript. Visitors with JavaScript disabled (rare) won’t be redirected. Search engines that don’t follow JS redirects also stay on the URL they were given, which is generally what you want.
The Remember preference for N hours cookie window controls how long WPML respects a visitor’s language choice after they switch manually. Enter 24 or multiples thereof.
Browser-language redirect has SEO consequences. There’s a companion page covering exactly how it affects Google indexing that’s worth reading before turning the feature on.
Different Homepage per Language
WordPress lets you set a static front page and a posts page. With WPML, you can also pick different static front pages per language. Your English visitors see one landing page, your French visitors see another, even when the languages are otherwise translations of each other.
Set the static front page in WordPress as usual (Settings > Reading > Static page > Front page), then create the translation for each language. WPML maps each language to its own front page automatically. The same applies to the posts page (the blog index) if your site uses one.
This is how sites with locale-specific marketing landings handle the homepage without setting up separate WordPress installations per market.
Written by Amir · Last updated July 2, 2026