Multisite Language Switcher


A simple, powerful and easy to use plugin that will add multilingual support to a WordPress multisite
installation, i.e. multiple subdomains or folders (if you need to set up multiple sites across multiple domains, you’ll also want to use the WordPress MU
Domain Mapping
plugin as well – as long as the domains are all hosted on the same server.).

The Multisite Language Switcher enables you to manage translations of posts, pages, custom post types, categories, tags and custom taxonomies.

The plugin uses flag-icons from FamFamFam. Thanks to Mark James for his great work. In addition I would like to thank Jürgen Mayer for creating the plugin’s banner.

Please, don’t forget to rate this plugin! 🙂


Thanks to all translators for their great work.

If you have created your own language pack, or have an update of an existing one, you can send me your gettext PO and MO so that I can
bundle it into the Multisite Language Switcher. You can download the latest POT file
from here.


  • Plugin configuration
  • Posts list
  • Edit post
  • Widget


This plugin provides 1 block.

Multisite Language Switcher


  • Download the plugin and uncompress it with your preferred unzip programme
  • Copy the entire directory in your plugin directory of your WordPress blog (/wp-content/plugins)
  • Activate the plugin in your plugin administration page (by the network administrator on all the blogs or by the root blog administrator for each particular blog).
  • You need to activate the plugin once in each blog, set the configuration in Settings -> Multisite Language Switcher

Now you can:

  • connect your translated pages and posts in Posts -> Edit or Page -> Edit
  • connect your translated categories and tags in Posts -> Categories or Post -> Tags
  • connect your Custom Post Types and Custom Taxonomies across languages
  • use the widget, the Gutenberg block, the shortcode [sc_msls] and/or a content_filter which displays a hint to the user if a translation is available
  • find also a shortcode for the widget [sc_msls_widget]
  • optionally you can place the code <?php if ( function_exists( 'the_msls' ) ) the_msls(); ?> directly in your theme files

Review the Multisite Language Switcher Website for more information.


I have no language options in the General settings.

You might read first WordPress in your language.

But I’d like the interface to stay in English.

You can choose the language of the dashboard in the settings of your user profile.

Do I really need a multisite?

It’s up to you – of course. But yes, if you want to use the Multisite Language Switcher.

How can I automatically redirect users based on the browser language?

The Multisite Language Switcher does not redirect the users automatically. I’m not sure if the plugin should do that. You might check out this jQuery plugin or this approach with a theme
if you need such functionality.

How can I add the Multisite Language Switcher to the nav-menu of my blog?

Please check the add-on MslsMenu out.

I want to have the languages in an HTML select. How can I do that?

Please check the add-on MslsSelect out.

I don’t want to upload the same media files for every site. What can I do?

You could try the plugin Network Shared Media. It adds a new tab to the “Add Media” window, allowing you to access the media files in the other sites in your multisite.

Is there a function I can call to get the language of the page the user is currently viewing?

Yes, you should use the WordPress API function get_locale() but you could also use code like that

use lloc\Msls\MslsBlogCollection;

$blog     = MslsBlogCollection::instance()->get_current_blog();
$language = $blog->get_language();
How can I move from WPML to MSLS?

There is a plugin which comes handy in here.


May 8, 2019
Great plug-in, works like a charm. Thank you very much to the developers, hope you keep up the good work!
February 1, 2019
Great plugin, what do exactly what it should. Lightweight and easy to handle. Thank you for the work on this.
December 13, 2018
Thank you for updating so quickly. All realtions are back again. Now everything work fine.
December 13, 2018
I had a (self induced...) prob with the plugin and was in slight hope to get an answer on the forum some time in the future if any. But i had a reply from Dennis that felt like 'immediately'. Cool author and cool plugin.
December 13, 2018
Last night i updated to latest version I found out this morning that all relations between post of different languages have been lost. So i have to fix from scratch 3000 posts and 300 pages. I dint`t go to work today, i am struggling already for hours in front of a pc screen to correct one by one all posts which were working fine until yesterday. It is not necessary to express my anger, i m sure you can imagine. But i will create 20 different accounts and i ll destroy this plugin`s reputation. I dont want any sorry... ---------------------------------------------------- As you can see i changed my review, i may lost hours but it is not the first time and definitely with wordpress(and any CMS) it will not be the last. I do make some plugins but only for my own use, never make them public, because i don`t want people to blame me if something goes wrong. Sorry if i sounded a little rough
Read all 76 reviews

Contributors & Developers

“Multisite Language Switcher” is open source software. The following people have contributed to this plugin.


“Multisite Language Switcher” has been translated into 11 locales. Thank you to the translators for their contributions.

Translate “Multisite Language Switcher” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.


There is a separate Changelog for this project available.