Multisite Language Switcher

July 22, 2024

Multisite Language Switcher Plugin

A simple, powerful and easy-to-use plugin that will help you to manage multilingual content in a multisite WordPress installation.

A simple, powerful, and user-friendly plugin that adds multilingual support to your WordPress multisite installation, whether using multiple subdomains or folders. Multisite Language Switcher allows you to effortlessly manage translations for 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! 🙂

Translators

Thanks to all the translators for their great work.

You can translate this plugin on translate.wordpress.org, or if you prefer and have created your 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.

Installation

  • Use the WordPress admin to install the plugin from there or
  • Download the plugin and uncompress it with your preferred unzip programme and copy the entire directory in the 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 blog administrator for each particular blog).
  • You need to activate the plugin once in each blog, by setting 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
  • you can 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.

Screenshots

  1. Plugin configuration

    Plugin configuration

  2. Posts list

    Posts list

  3. Edit post

    Edit post

  4. Widget

    Widget

FAQ

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 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 on the other sites in your multisite.

Can I call a function to get the language of the page the user is 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 in handy here.

Changelog

This project has a separate Changelog.

Details

  • Version: 2.8.2
  • Active installations: 5,000
  • WordPress Version: 6.1
  • Tested up to: 6.6.1
  • PHP Version: 7.4

Ratings


5 Stars
4 Stars
3 Stars
2 Stars
1 Stars