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.
Download the latest stable from the WordPress Plugin Directory, and please remember to give this plugin a five-star rating.
Please note that while the master branch on GitHub is intended to be stable, it is not recommended for production use. Instead, please use the official releases for deployment.
If you plan to use the GitHub repository on a server, run composer run install-prod. It installs the production PHP dependencies and builds the assets required at runtime (flag definitions, JavaScript bundles, CSS, and the Gutenberg block). The script requires PHP, Composer, and Node.js / npm to be available on the machine.
-
Via WordPress Dashboard:
- Go to your WordPress dashboard.
- Navigate to
Network Admin>Plugins. - Click on
Add New Plugin. - Search for "Multisite Language Switcher".
- Click
Install Nowand thenActivate.
-
Manual Installation:
- Download the plugin and unzip it using your preferred program.
- Upload the entire plugin directory to your WordPress plugin directory (/wp-content/plugins).
- Navigate to
Network Admin>Plugins. - Click on
Activatefor the Multisite Language Switcher plugin.
-
Configuration:
- After activation, navigate to
Settings>Multisite Language Switcherin each blog to configure the plugin.
- After activation, navigate to
-
Connect Translations for Pages and Posts:
- Navigate to
Posts>EditorPages>Editto link your translated content.
- Navigate to
-
Connect Translations for Categories and Tags:
- Go to
Posts>CategoriesorPosts>Tagsto associate your translated categories and tags.
- Go to
-
Connect Custom Post Types and Custom Taxonomies:
- Easily manage translations across different custom post types and taxonomies.
-
Utilize Widgets, Shortcodes, and Content Filters:
- Use the widget or the Gutenberg block.
- Use the
[sc_msls]shortcode to render the language switcher, or[sc_msls_widget]for the widget variant. - Set the content filter to display a hint to users when a translation is available.
-
Optional Theme Integration:
- Insert the following PHP code directly into your theme files to display language switcher links:
if ( function_exists( 'msls_the_switcher' ) ) { msls_the_switcher(); }
- Insert the following PHP code directly into your theme files to display language switcher links:
Review the Multisite Language Switcher Website for more information. Some diagrams are also available.
Reference material for developers extending or integrating with the plugin lives in the docs/ directory:
- Public API Functions - the
msls_*helper functions exposed for use in themes and other plugins. - Hooks Reference - every action and filter the plugin emits, grouped by subsystem.
- Snippets & Examples - short, focused recipes for common integration tasks.
Credits for flag icons, banner artwork, and the full list of translators are maintained in Acknowledgements & Translators.