The language switcher is how visitors choose which language to view your site in. Without a visible, accessible switcher, visitors would need to manually type translated URLs — which nobody does. A well-placed language switcher is the bridge between your original content and all your translations. Lang Forge provides four different ways to add a switcher, so you can choose the method that fits your site’s design and layout best.
The best approach depends on your theme’s structure, your design preferences, and where your visitors expect to find language options. Many sites use more than one method — for example, a dropdown in the header navigation plus a list in the footer.
Step-by-step: Option 1 — Adding a switcher as a Widget
Best for themes that use widget areas in the sidebar, header, or footer.
- Go to Appearance > Widgets in your WordPress admin
- Locate the Lang Forge Language Switcher widget in the list of available widgets
- Drag it into the widget area where you want it to appear — for example, “Header Widget Area”, “Sidebar”, or “Footer Column 1”
- Configure the widget settings:
| Setting | What it controls | Recommended for |
|---|---|---|
| Style | Dropdown (compact, one click to expand), List (vertical links, always visible), or Flags Only (just flag icons, most compact) | Dropdown for headers, List for sidebars, Flags Only for tight spaces |
| Show flags | Displays flag icons next to language names | Yes for most sites — flags are visually recognizable |
| Show language names | Displays the language name in its native script (e.g., “Espanol”, “Francais”) | Yes for sidebars and footers, optional for headers |
| Show current language | Highlights which language is currently active | Yes — helps visitors confirm their current language |
| Hide current | Hides the active language from the list | Optional — saves space when combined with a clear active-language indicator |
- Click Save
- Visit your site and verify the switcher appears in the correct location and works as expected
Step-by-step: Option 2 — Adding a switcher with a Shortcode
Best for placing the switcher inside page content, custom templates, or theme areas where widget drag-and-drop is not available.
- Decide where you want the language switcher to appear — inside a page, a text widget, or a theme template file
- Add the following shortcode at that location:
- Customize the attributes to match your preference. Available attributes and values:
| Attribute | Values | Default |
|---|---|---|
| style | dropdown, list, flags | dropdown |
| show_flags | yes, no | Yes |
| show_names | yes, no | Yes |
| show_current | yes, no | Yes |
| hide_current | yes, no | No |
- Save the page or widget
- Preview the page to confirm the switcher displays correctly
Step-by-step: Option 3 — Adding a switcher as a Menu Item
Best for sites where the language switcher should appear inside the main navigation bar.
- Go to Appearance > Menus in your WordPress admin
- Select the menu you want to add the switcher to (for example, your primary navigation menu)
- On the left side of the page, look for the Lang Forge panel (below Pages and Categories)
- Check the Language Switcher checkbox
- Click Add to Menu
- A special menu item labeled “Language Switcher” appears in the menu structure
- Drag it to the desired position — most sites place it at the very end of the menu (far right)
- Save the menu
- The menu item automatically renders as a language dropdown on the frontend — it is not just a text link, it becomes a functional switcher
Option 4: Admin bar switcher (automatic)
A language switcher automatically appears in the WordPress admin bar whenever you are logged in and viewing the frontend of your site. This is useful for content managers who need to quickly preview different language versions while reviewing content. No setup is required — it is always there for logged-in users.
What visitors see and how it behaves
The language switcher only displays languages that have a published translation for the current page. If your site has five active languages but only three have a published translation for the page the visitor is viewing, only those three appear. This prevents visitors from clicking a language and landing on a missing or placeholder page.
When a visitor selects a language, the switcher takes them to the translated version of the exact page they are on. It also sets a cookie to remember their preference. On subsequent visits, the site automatically serves content in their chosen language (if a translation exists for the page they are visiting).
Real-world example: A multilingual corporate site
A global consulting firm places a dropdown language switcher in the header using the Menu Item method (so it appears in the main navigation) and a list-style switcher in the footer using a Widget. The header dropdown provides quick access on every page, while the footer list shows all language options with both flags and native language names. Visitors arriving from a Google search in German see the header dropdown and can confirm they are reading the German version, or switch to English or French if they prefer.
Common mistakes to avoid
- Placing the switcher where visitors cannot find it. The most expected locations are the top-right corner of the header or in the footer. Hiding it deep in a sidebar reduces its effectiveness
- Using flags alone for a single-country site. If your site serves Canada (English and French), using only flag icons can confuse visitors because both languages share the Canadian flag. Use language names instead
> Tip: Test the language switcher on mobile devices. Dropdown switchers typically work better in mobile navigation than list-style switchers, which can take up too much vertical space on small screens.
> Good to know: The language switcher preserves the visitor’s choice using a browser cookie. If someone selects Spanish during one visit, they will continue seeing Spanish on subsequent visits, even when navigating to different pages.
[Screenshot: A language switcher dropdown in a site header showing flags and native language names for English, Spanish, French, and Japanese]
—