PHPackages                             lloc/multisite-language-switcher - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. lloc/multisite-language-switcher

ActiveWordpress-plugin[Localization &amp; i18n](/categories/localization)

lloc/multisite-language-switcher
================================

Multisite Language Switcher

2.10.1(5mo ago)14010040[14 issues](https://github.com/lloc/Multisite-Language-Switcher/issues)[3 PRs](https://github.com/lloc/Multisite-Language-Switcher/pulls)GPL-2.0-or-laterPHPPHP &gt;=7.4CI failing

Since Apr 1Pushed 1mo ago11 watchersCompare

[ Source](https://github.com/lloc/Multisite-Language-Switcher)[ Packagist](https://packagist.org/packages/lloc/multisite-language-switcher)[ Docs](http://msls.co)[ GitHub Sponsors](https://github.com/lloc)[ RSS](/packages/lloc-multisite-language-switcher/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (10)Dependencies (12)Versions (59)Used By (0)

Multisite Language Switcher
===========================

[](#multisite-language-switcher)

A simple, powerful, and user-friendly plugin that adds multilingual support to your [WordPress multisite](https://wordpress.org/documentation/article/create-a-network/) 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.

[![WordPress Plugin Version](https://camo.githubusercontent.com/ef43be1e1b51b5d749e1ec5b8fe00722a35c94eb97bcf02f998a51fc3a1a0dad/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f706c7567696e2f762f6d756c7469736974652d6c616e67756167652d73776974636865722e737667)](https://wordpress.org/plugins/multisite-language-switcher/)[![License](https://camo.githubusercontent.com/ef88f59427736dbb8552a135a673e6d315cb04f50ba43d15d54ab931267371f9/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d47504c5f76322532422d626c75652e737667)](http://opensource.org/licenses/GPL-2.0)[![WordPress Tested](https://camo.githubusercontent.com/3e924b9f5392620b08e6c98a42971a8c5042f6b02a60b3610bd59911496c573f/68747470733a2f2f696d672e736869656c64732e696f2f776f726470726573732f762f6d756c7469736974652d6c616e67756167652d73776974636865722e737667)](https://wordpress.org/plugins/multisite-language-switcher/)[![codecov](https://camo.githubusercontent.com/11df4740f3f894752b51d2735e360d28d7cf49690dacd55ab005f892083875cd/68747470733a2f2f636f6465636f762e696f2f67682f6c6c6f632f4d756c7469736974652d4c616e67756167652d53776974636865722f67726170682f62616467652e7376673f746f6b656e3d496c44346258344b5a34)](https://codecov.io/gh/lloc/Multisite-Language-Switcher)[![Ask DeepWiki](https://camo.githubusercontent.com/0f5ae213ac378635adeb5d7f13cef055ad2f7d9a47b36de7b1c67dbe09f609ca/68747470733a2f2f6465657077696b692e636f6d2f62616467652e737667)](https://deepwiki.com/lloc/Multisite-Language-Switcher)

Where to get the plugin
-----------------------

[](#where-to-get-the-plugin)

[Download](http://downloads.wordpress.org/plugin/multisite-language-switcher.zip) the latest stable from the [WordPress Plugin Directory](https://wordpress.org/plugins/multisite-language-switcher/), and please remember to give this plugin [a five-star rating](https://wordpress.org/support/plugin/multisite-language-switcher/reviews/#new-post).

*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](https://github.com/lloc/Multisite-Language-Switcher/releases) for deployment.*

If you plan to use the GitHub repository on a server, don't forget to run `composer install --no-dev`.

Installation Instructions
-------------------------

[](#installation-instructions)

- Via WordPress Dashboard:

    - Go to your WordPress dashboard.
    - Navigate to `Network Admin` &gt; `Plugins`.
    - Click on `Add New Plugin`.
    - Search for "Multisite Language Switcher".
    - Click `Install Now` and then `Activate`.
- 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` &gt; `Plugins`.
    - Click on `Activate` for the Multisite Language Switcher plugin.
- Configuration:

    - After activation, navigate to `Settings` &gt; `Multisite Language Switcher` in each blog to configure the plugin.

Features and Capabilities
-------------------------

[](#features-and-capabilities)

- Connect Translations for Pages and Posts:

    - Navigate to `Posts` &gt; `Edit` or `Pages` &gt; `Edit` to link your translated content.
- Connect Translations for Categories and Tags:

    - Go to `Posts` &gt; `Categories` or `Posts` &gt; `Tags` to associate your translated categories and tags.
- 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 in the classic editor.
    - 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();
        }
        ```

Review the [Multisite Language Switcher Website](http://msls.co/) for more information. Some [diagrams](https://github.com/lloc/Multisite-Language-Switcher/blob/master/Diagrams.md) are also available.

Acknowledgements
----------------

[](#acknowledgements)

The plugin uses flag-icons from [FamFamFam](http://famfamfam.com). Thanks to Mark James for his great work. In addition I would like to thank [Jürgen Mayer](https://creativpin.com) for creating the plugin's banner.

Translators
-----------

[](#translators)

Thanks to all translators for their great work.

- German (de\_DE) - [Dennis Ploetner](http://lloc.de/)
- Italian (it\_IT) - [Antonella Cucinelli](http://www.freely.de/)
- Dutch (nl\_NL) - [Alexandra Kleijn](http://www.buurtaal.de/)
- Brazillian Portuguese (pt\_BR) - [Victor](http://www.coolweb.com.br/)
- Spanish (es\_ES) - [Andreas Breitschopp](http://www.ab-weblog.com/en/)
- French (fr\_FR) - [Andreas Breitschopp](http://www.ab-tools.com/en/)
- Russian (ru\_RU) - [Andrey Vystavkin](http://j4vk.com/)
- Ukrainian (uk) - [Victor Melnichenko](http://worm.org.ua/)
- Croatian (hr\_HR) - [Brankec69](https://github.com/Brankec69)
- Romanian (ro\_RO) - [Armand K](http://caveatlector.eu/)
- Polish (pl\_PL) - [Kamil Frejlich](http://www.mojito-networks.com/)
- Lithuanian (lt\_LT) - Ovidijus Pukys
- Catalan (ca\_ES) - Joan López
- Czech (cs\_CZ) - Rastr
- Hungarian (hu\_HU) - RobiG
- Georgian (ka\_GE) - [Jas Saran](http://www.gwebpro.com/)
- Greek (el) - [Christoforos Aivazidis](http://www.aivazidis.org/)
- Serbian (sr\_RS) - [Web Hosting Hub](http://www.webhostinghub.com/)
- Turkish (tr) - Alican Cakil
- Armenian (hy\_AM) - Yeghishe Nersisyan
- Bengali (bn\_BD) - Md. Nazmul Huda
- Japanese (ja) - [ThemeBoy](http://themeboy.com/)
- Swedish (sv\_SE) - [Erik Bernskiold](http://www.bernskioldmedia.com/)
- Traditional &amp; Simplified Chinese (zh\_CN &amp; zh\_TW) - DrBenson
- Arabic (ar) - Mohamed Elwan
- Norwegian (nb\_NO) - Ibrahim Qraiqe
- Bulgarian (bg\_BG) - [Vencislav Raev](http://www.catblue.net/)

You can translate this plugin on [translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/multisite-language-switcher/), or if you prefer and have created your own language pack, or have an update of an existing one, you can [send me](mailto:re@lloc.de) 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](https://github.com/lloc/Multisite-Language-Switcher/blob/master/languages/default.pot).

###  Health Score

55

—

FairBetter than 98% of packages

Maintenance81

Actively maintained with recent releases

Popularity30

Limited adoption so far

Community29

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 86.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~48 days

Recently: every ~98 days

Total

44

Last Release

157d ago

PHP version history (4 changes)2.4.0PHP &gt;=5.6

2.4.7PHP &gt;=7.0

2.5.7PHP &gt;=7.1.0

2.6.0PHP &gt;=7.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/64e0feadff7575b1389b5460ceec275d1de1eb16dcc1648e35f5779453de72e0?d=identicon)[realloc](/maintainers/realloc)

---

Top Contributors

[![lloc](https://avatars.githubusercontent.com/u/1012205?v=4)](https://github.com/lloc "lloc (1578 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (127 commits)")[![lucatume](https://avatars.githubusercontent.com/u/2749650?v=4)](https://github.com/lucatume "lucatume (56 commits)")[![speccode](https://avatars.githubusercontent.com/u/1951131?v=4)](https://github.com/speccode "speccode (8 commits)")[![hatsumatsu](https://avatars.githubusercontent.com/u/3452400?v=4)](https://github.com/hatsumatsu "hatsumatsu (6 commits)")[![arnowelzel](https://avatars.githubusercontent.com/u/6613614?v=4)](https://github.com/arnowelzel "arnowelzel (6 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (4 commits)")[![afercia](https://avatars.githubusercontent.com/u/1682452?v=4)](https://github.com/afercia "afercia (4 commits)")[![Zodiac1978](https://avatars.githubusercontent.com/u/870475?v=4)](https://github.com/Zodiac1978 "Zodiac1978 (2 commits)")[![anvyst](https://avatars.githubusercontent.com/u/227261?v=4)](https://github.com/anvyst "anvyst (2 commits)")[![apermo](https://avatars.githubusercontent.com/u/4695889?v=4)](https://github.com/apermo "apermo (2 commits)")[![eballo](https://avatars.githubusercontent.com/u/670814?v=4)](https://github.com/eballo "eballo (2 commits)")[![herewithme](https://avatars.githubusercontent.com/u/898608?v=4)](https://github.com/herewithme "herewithme (2 commits)")[![jubstuff](https://avatars.githubusercontent.com/u/101818?v=4)](https://github.com/jubstuff "jubstuff (2 commits)")[![julien731](https://avatars.githubusercontent.com/u/1441024?v=4)](https://github.com/julien731 "julien731 (2 commits)")[![matthewsuan](https://avatars.githubusercontent.com/u/3340447?v=4)](https://github.com/matthewsuan "matthewsuan (2 commits)")[![MiguelRoot](https://avatars.githubusercontent.com/u/15735288?v=4)](https://github.com/MiguelRoot "MiguelRoot (2 commits)")[![navigatrum](https://avatars.githubusercontent.com/u/6989338?v=4)](https://github.com/navigatrum "navigatrum (2 commits)")[![orcen](https://avatars.githubusercontent.com/u/3168037?v=4)](https://github.com/orcen "orcen (2 commits)")[![patriciabt](https://avatars.githubusercontent.com/u/1843660?v=4)](https://github.com/patriciabt "patriciabt (2 commits)")

---

Tags

gutenberg-blockshacktoberfestlanguagesmultilanguagemultilingualmultisitesplaywrightpluginwordpresswordpress-pluginlocalizationlanguagemultilingualswitchermultisite

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/lloc-multisite-language-switcher/health.svg)

```
[![Health](https://phpackages.com/badges/lloc-multisite-language-switcher/health.svg)](https://phpackages.com/packages/lloc-multisite-language-switcher)
```

###  Alternatives

[inpsyde/multilingual-press

Simply THE multisite-based free open source plugin for your multilingual websites.

2414.0k1](/packages/inpsyde-multilingual-press)[tractorcow/silverstripe-fluent

Simple localisation for Silverstripe

92421.6k26](/packages/tractorcow-silverstripe-fluent)[codezero/laravel-localized-routes

A convenient way to set up, manage and use localized routes in a Laravel app.

543638.1k4](/packages/codezero-laravel-localized-routes)[gettext/languages

gettext languages with plural rules

7530.3M11](/packages/gettext-languages)[josiasmontag/laravel-redis-mock

This Laravel package provides a Redis mock for your tests

471.8M16](/packages/josiasmontag-laravel-redis-mock)[whitecube/lingua

A PHP language codes converter, from and to the most common formats (ISO, W3C, PHP and human-readable names).

441.2M15](/packages/whitecube-lingua)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
