This plugin hasn’t been tested with the latest 3 major releases of WordPress. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

User Language Switch


Closing announcement

It has been a while since we are helping to translate websites in multiple languages and we appreciate your confidence in the plugin for that. Unfortunatelly, we don’t have capacity for maintining the plugin and providing support. We are not offering support any more, this plugin is outdated and it might not work in your website.

Due to the plugin could not work in current and future WordPress versions and new bugs found could not be solved, we encourage users to test and make changes to use another translation plugin.

Finally, our apologizes by any problem we could cause with this decision.

User Language Switch is a WordPress multilingual plugin that you can use to build multilingual websites. It displays flags to visitors that your users can use to browse your website in different languages. If you prefer, you can deactivate flags and user shortcodes and functions to create your own language switch.

Admin users can set default language for your website and registered users can set language they want to see your website by default. User Language Switch allows to set language for back-end and front-end independently.

When content is linked, a language prefix is added in URLs of content in secondary languages. The plugin always redirect to URLs with language prefix for content in secondary language, in this way there are no different URLs pointing to the same content and hurting your SEO. This plugin is compatible with SEO plugins like Yoast SEO.

It requires you install different languages in your website and provide translation of your content, it doesn’t translate content automatically. User Language Switch requires nice permalinks and URL rewriting enabled.

User Language Switch was created by Webilop team and it is free. If you need help, you can use the plugin support forum or don’t hesitate to contact us. We also offer services about WordPress development and customization.


  • Linking translations of pages in multiple languages
  • Linking translations of blog posts in multiple languages
  • Linking translations of custom post types in multiple languages
  • Automatic detection of visitor’s browser language
  • Language flags that allow visitors to change website language easily
  • Registered users are able to select the default language for the website
  • Automatic translation of menus and creation of menus for each language
  • Creation of sidebars for each language
  • Automatic filter of blog posts with different language to the website language
  • Option to select a language for back-end and another one for front-end
  • Search of pages and blog posts taking into account website language

Coming Features

We have dreams for User Language Switch and we would like you be part of them, please tell us which features you like most for the plugin:

  • Allow me edit multiple translations in same place: At the moment, you need to edit pages independently for each translation, what if you can edit the content of all these pages in the same place? – I like it!
  • Put me in contact with human translators: We want to create a page available for admin users where they can contact human translators and send pages and content to be translated(translators will not translate for free). – I like it!
  • Reports of content translated: Allow admin and editor users to see reports about how much content has been translated and how much is missing. – I like it!


If you want to translate this plugin to your language, please use file user-language-switch.pot and to create MO and PO files. You can use an editor like Poedit to do the job easily.


Check User Language Switch in our website to get more details about installation and configuration:


  • This screenshot illustrates User Language Switch options available in the settings page.
  • Assign menu translations to existing menus.
  • Enable or disable languages available for your website(it only applies to languages for front-end).
  • Enable automatic filtering of posts, pages and custom post types.
  • Select the language and translations of a post.


This section describes how to install the wordpress translation plugin and get it working.

  1. Upload the user-language-switch folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the ‘Plugins’ menu in WordPress
  3. Once you have activated the plugin, select the option ‘User language’ in ‘Settings’ menu, select available and default languages for your website.
  4. Go to your posts, pages and custom post types and select the language and their translations.


What is User Language Switch?

User Language Switch is a WordPress translation plugin that allows admin users to set the default language for the website and also include translations of pages, posts, custom post types, menus and sidebars. Visitors and users registered can see the website using any of its translations available.

I only see English in the list of available languages

Probably you don’t have any other language installed in your WordPress installation nor in your theme. Take a look to the instructions to install other languages to your WordPress website.

I don’t see the option to set the language and translations of my posts and pages

Go to the post or page edition page, scroll to the top of the page and click on tab “Screen Options”, then check the option “Language”.

My posts and pages doesn’t appear on the option to add translations

When you are creating or editing a post, page or custom post page, you can assign as translations posts, pages and custom post types that are already published and that have a language assigned.

I click on a flag to see the translation of my page, but I don’t see content translated

First check if your translation have been linked to your post, page or custom post in the edition page. If there is no translation available, then the content of the default language is displayed though other sections of the page could appear in the correct language.

I don’t see my posts in the blog

By default the plugin filter posts in languages different to the language you are looking in the website. You can deactivate this feature in the settings page of the plugin. If a post doesn’t have a language assigned, then the plugin considers the post in the default language the website.

Where do I obtain the content translated for my page?

The plugin doesn’t translate content automatically, we recommend professional translations for websites instead automatic translations provided by online tools. Webilop team can help you to find professional translators for your website.

How can I collaborate with this plugin?

You can submit your pull requests to the code of the plugin through the repository of User Language Switch in Github. Additionally you can contact us at contact[at]


22, Febreru de 2021
A new client has this on her site and it breaks just about everything in the admin area, blocking access to posts and pages. There’s a big notice in the admin area saying the plugin was abandoned a good 3 years ago, and a notice on the plugin page here, plus the developer’s website is no longer working, so it’s a mystery as to why it’s still on the repo as I’ve seen other plugins removed for less!
12, Febreru de 2017
During install I got a “Plugin does not have a valid header”-error. Then when trying to activate the plugin it gave me: Fatal error: Uncaught Error: Call to undefined function rest_url() in /var/www/vhosts/*****/httpdocs/wp-content/plugins/bogo/admin/admin.php:43 Stack trace: #0 /var/www/vhosts/*****/httpdocs/wp-includes/plugin.php(503): bogo_admin_enqueue_scripts(‘plugins.php’) #1 /var/www/vhosts/*****/httpdocs/wp-admin/admin-header.php(92): do_action(‘admin_enqueue_s…’, ‘plugins.php’) #2 /var/www/vhosts/*****/httpdocs/wp-admin/plugins.php(401): require_once(‘/var/www/vhosts…’) #3 {main} thrown in /var/www/vhosts/*****/httpdocs/wp-content/plugins/bogo/admin/admin.php on line 43 The admin stopped working then. I had to remove the plugin through FTP.
3, Setiembre de 2016
I installed this plugin. Its really working fine. I recommend it.. Its easy to use and working now for turkish and english languages. control it here.
3, Setiembre de 2016 1 reply
this plugin will crash your site and steals your password! it has to be removed from here as soon as possible!
3, Setiembre de 2016
The Plugin is very preferable for any languages. But have no option for slider translation (like revslider/layerslider). Hope it will be able in future.
3, Setiembre de 2016
simple, functioning. quite unsure if it will work with 4 different translations, lets find out 😀 works fine with 2.
Read all 21 reviews

Contributors & Developers

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


Translate “User Language Switch” into your language.

Interested in development?

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



  • First general availability plug-in version


  • Anonymous functions deleted in order to support php versions earlier than 5.3


  • Persian language added to localization. Special thanks to Khalil Delavaran(khalil.delavaran[at] for this contribution.


  • Serbo-Croatian language added. Special thanks to Borisa Djuraskovic( from Web Hosting Hub for this contribution.


  • Fix of bug in redirections between translated pages and prefixes to avoid repeated pages with the same content.
  • Fix of bug creating the links of the language switch. Some links used to not be created properly.
  • Fix of bug in the selection of translations for a post. All the available translations used to not be loaded.
  • Addition of Estonian language(et) as abbreviation for et_EE.


  • Fix of bugs in localization of the plugin.
  • Fix of typos in comments in code of the plugin.
  • Thanks to Jaillet, Christophe for feedback provided.


  • Fix of major bugs.
  • Addition of language flags in all pages of the website automatically.
  • Automatic translation of menus based on pages included in menus and their translations.
  • Addition of translation menus to create different menus for each language.
  • Addition ot translation sidebars to use different widgets for each language.
  • Automatic filtering of posts, pages and custom post types according to their languages.
  • Automatic filtering of search results according to the language displayed.
  • Addition of references to other languages available in HTML head section of post, pages and custom post types.
  • Creation of Github repository to receive collaboration easily.


  • Fix of bug enabling and disabling post types for automatic filtering based on languages.


  • Allow install a new language from the settings page
  • Compatibility with Buddypress and bbPress
  • Move user options to profile page
  • Fix of major bugs.


  • Fix relation between language codes and country codes for solve problem with render correct flag


  • Add Esperanto flag
  • Fix home page translation bug
  • Fix correct show flags in posts/pages index page


  • Update country and languages list


  • Fix Vietnam flag


  • Fix post-type issue


  • Include survey for professional translators


  • Remove survey (Thanks for all your answers!)
  • Allow change flag image
  • Add gray filter to flags when no have a translation


  • Fix automatic redirection based on browser language.


  • Avoid pass-by-reference in PHP.
  • Remove rewrite rules on deactivation of plugin.