This plugin hasn’t been updated in over 2 years. It may no longer be maintained or supported and may have compatibility issues when used with more recent versions of WordPress.

DeMomentSomTres Language


DeMomentSomTres Language allows to have different instances of a blog using different languages on a network installation.

Using WordPress multisite install you can have a web instance for every language allowing specific SEO and sales strategies based on language.

It allows to change from a content to its translations via easy links.


  • Language configuration.
  • Automatic language selection based on browser preferred language.
  • Every content can be linked to all its translations on other instances.
  • Translatable content types defined in settings.
  • Language links can be presented via ‘the_content’ filter or using shortcodes and widgets.
  • Body class customization based on language.

History & raison d’ĂȘtre

In 2011 we needed a multilanguage plugin allowing:

  • Content translation.
  • Integration with WordPress SEO by Yoast.
  • Different communication and SEO strategies based on language.
  • Automatic language selection based on browser language.

As we didn’t find it, we decided to implement it and use it.

More information

DeMomentSomTres Language in


The recommended usage mode (supose required languages catalan and english) is having 3 instances of WordPress:

  1. Landing site configured in landing mode in order to redirect the users based on their languages preferences. For instance
  2. Catalan site with catalan language set. Example address
  3. English site with englis language set and default site mark. Example address

A french user when looking for will be redirected to as it is the default mode.

When you’re writting a content, a metabox whit the candidate translations is shown in order to link a component with all its translations.

Contributors and translators

Thanks to:


It can be installed as any other WordPress plugin.

In order to work properly, WordPress Multisite MUST be installed and configured.

We have been recommending to use shortcode mode in order to avoid component collitions as the_content is not allways correctly configured. We have decided to mantain only shortcode mode and stop development of “non shortcode mode”.

If upgrading to 2.1, you should enter every blog and save settings again. You may need to save again all post, pages and translated content.


When I access my page with www destination is lost

You should add the following code just after RewriteBase / in .htaccess file

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
Can I use “non-shortcode” mode”

We stopped development of the non-shortcode mode as it is not being used very much and there are problems with plugins using the_content filter not the right way.

I want to have multiple multilanguage sites under the same installation

Don’t worry you can use site groups.

You need to enter Network manager > Language and setup the groups.

Group name can be any string or number and every group must contain a Landing site and as much languages as you want.

Contributors & Developers

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




  • Create translations from within a post
  • Edit button to open translations in edit mode on other windows


  • global options used in order to reduce database and load
  • Hreflang links added


  • saving config problem solved.
  • Message shown in config is site is not public


  • bug fix: Fatal Error line 1018 solved


  • bug fix: Home links widget failure


  • Code full rewrite to use classes and DeMomentSomTres Tools free plugin.
  • Site groups to allow multiple landing sites.
  • JQuery widget deprecated


  • bug fix: wrong initial redirection if wordpress is installed in a directory different from root
  • Https protocol management



  • Frontpage link title updated


  • At frontpage automatically redirects to other frontpages.


  • Additional class based on language


  • bug: recursive redirect


  • Language added after the site name in ‘My Sites’ menu.
  • ‘My Sites’ menu sort order based on settings.


  • Value of blog properties public parameter is 2 in some cases. Changes in order to allow 2 or 1.
  • Reciprocal update active by default.


  • get_blog_list() deprecated and changed by wp_get_sites() in function QuBicIdioma_obtenir_blocs().


  • libraries compatibility upgrade


  • skip some problematic redirects


  • javascript optimization: javascript loaded only if required
  • css optimization: css loaded only if required
  • redirect errors
  • force reciprocal update on content save by default


  • redirect landing site to default site via 301 instead of 302.


  • post translation widget can be shown even if empty


  • bug solved: debug info showed to solve 1.2.01 bug not removed.


  • bug solved: when siteurl contains upper cases it started a redirection cycle.


  • shortcode [DeMomentSomTres-Language class=”optional classes”] to show all translations of the main content.
  • widget Language: post translations
  • shortcode mode to avoid traditional filters.


  • bug when installed in a directory instead of the root of the web.


  • avoid showing translation on widgets calling custom types.


  • redirect to language keeping url tail


  • minor bugs solving


  • Landing mode optimization


  • Use default language prefix if none is found


  • bug: post language selector shown even if post type is not translatable.


  • Landing site mode: allows to jump to the other sites based on the browser language


  • Duplicate ‘/’ sign in address solved


  • Debugging mistake solved


  • Added to subversion


  • Rebranding of component to new company name: DeMomentSomTres.
  • Translate Idioma to Language.
  • Solved Warning on admin when no language is configured.


  • Additional text only widget on div qibdip_Idioma_Text.


  • Set reciprocal translations. From one bloc you can update all translations relationships. It assumes that the user is allowed to do all operations.
  • Rename of links div in post


  • Page: Add fields to translation allowing to link to other translations of pages.
  • Custom posts: Add fields to translations
  • Take into account post types settings on links


  • Settings: Allows to choose the post_types affected by translation. Limited functionality to administration.
  • Take blog status into account


  • Post: Link to post translation
  • Header: Link on header to go to other site translations


  • File structure change
  • Widget Language Chooser
  • Bloc change based on language


  • Initial release