Skip Navigation

We reviewed dozens of sites using WPML, trying to figure out what are the most important features missing from WPML – the results are not very surprising, but it’s good to get them from actual sites.

1. Butt-ugly language switchers

WPML creates a drop-down language switcher. It’s fully functional, but the default design doesn’t match any website.

Many folks drag the language switchers widget to their theme, but unless they’re CSS gurus, they’s now stuck with our default color scheme, which just makes the site ugly.

To fix this, we’re going to add customization options to the drop-down language switcher. You’ll be able to switch between several pre-designed color schemes and create your own.

We’ll also add a language switcher option added to the site’s footer, in the form of country flags. This will have two flavors – a widget and an addition to the site’s footer (for themes that don’t include a footer widget area).

2. Broken link to home page

All themes have a link to the home page. WPML needs to hook to that link and alter it, so that each language home page points to the correct home in that language. It’s not done by default, so whenever visitors click on ‘Home’, they get to the home page in the default language.

We’re going to have WPML alter this, so that any link to ‘Home’ goes to the right language.

3. Untranslated texts all over the place

WordPress is so popular and powerful because of the huge range of plugins, offering unique functionality without any coding. Problem is, translations for all plugins to all languages isn’t available. This causes multilingual sites to have parts that always appear in the default language.

Visitors don’t know and don’t care why it’s happening and that it’s not your fault. The site still looks strange when part of the page is in one language and part in another.

We’re hoping to make this much better, in the near future, when WPML allows translating texts in other plugins.

What do you think?

What are your favorite missing items in WPML?

Include a link to your site and tell what are the most painful points keeping it from being fully multilingual.

33 Responses to “3 most urgently missing functions in WPML”

  1. Yay! Totally agree with specially no.1 – biggest issue right now. No.3 is also a very good one and I cant wait to see the results of these implementations. Go’wan

    • Well, it can be fixed today by editing some CSS, but it’s a pain to do. We’ll add a GUI to make this much easier.

  2. An addition to my last comment: I would really appreciate a possibility to have just simple links in one line, so that viewers would be able to see all language options in one glimpse.

  3. Aggreed with he 3 points. 😉

    Also the “translation by WPML” that scan PHP file and gettext functon, would be cool if the import .po function can check if the original language match an already existing function. I got double entry sometimes and need to clean manually.

    In the “translation in theme folder” -> change from /languages in theme folder (when it come to a few translation that’s getting bad to see .mo file in the root folder of the theme.)

    Customizable widget would be cool, and because on most theme i used that f*cked up my design (even with arras theme ;)).

    What about role permissions to allow someone to work on the translation for a specific languages without having to gave him all the reight to do so ? (I use .po import /export for that atm :))

    Hope that can help, let me know if you need details on specific stuffs.

    • Thanks. Good points.

      I’m not sure we can do all of them, as in this round we want to make it work nicer for basic users.

      I didn’t understand what you mean with ‘change from /languages in theme folder’. Can you explain?

      • In admin side :

        WPML > theme localization > “Using a .mo file in the theme directory.”

        default is to have .mo in the theme folder. , would be better to have the .mo in theme folder/languages (languages su-directory).

        Because when you start having a few languages it’s getting unorganized !

        Enjoy !

  4. I have one “function” that has nothing to do with the plugin itself, but with your own website… How about a BIG BUTTON that links to your forums?

    • Yeah, suffers from massive disorder. Just comes to show you that no matter what fancy tools you use, if the contents are not organized, it’s going to come out a mess.

  5. Hi Amir,

    First of all thanks for providing this lovely plugin. We’re currently developing a huge WordPress based website and it comes out amazing. The plugin works exactly how it suppose to work. But since every good plugin needs ideas to make is awesome I’ve made a little list of features I’m missing.

    – Country splitted website option
    For an example Belgium is having two languages, French and Dutch (Belgium). It would be lovely if the country flags are being separated from the languages for international corporate usage.

    – Country / language overview on welcoming page
    I’m missing a feature to make the main domain a selection page for the language / country. It would will look like this: domain.tld = Select your language / Welcome – nl.domain.tld = Dutch Homepage – uk.domain.tld = UK Homepage

    – Browser language or IP country detection

    Thanks a lot!

    • We’re planning to add a languages editor, so you’ll be able to create fr_BE and fr_FR. Then, you’ll also be able to associate any country flags to those languages.

      For the other two issues, I think that they would be better implemented as a dedicated plugin. Once we start implementing this, requests will start pouring in, each with a different twist (without which, it’s not usable). For instance, you might want to remember that languages of people who already visited (cookies), you might want to detect according to IP and HTTP accepted_languages, you might want to pop-up a window in case your detection algorithm isn’t working, etc.

      We’re working with some excellent coders who can build such a plugin quickly. The best way to handle this might be to create your own plugin and make it public. You’ll be financing something that many others use, but you’ll get exactly what you need and probably some help/feedback from the community.

      What do you think?

  6. HI Amir,

    really good points. I agree with the others that no. 1 is the main problem right now.

    Another feature request:
    It would be good to have the possibility to redirect missing translations to a custom page instead of the home page.
    Do you think is it possible or it require to much work?

    Thanks a lot

  7. Oh, another problem I had issues with it yesterday.

    Why can’t 2 languages have the same tag?

    For instance: if I’m talking about “wpml” there’s no way to assign “wpml” tag to both italian and english. When I try to create the italian tag the plugin automatically creates a tag called “wpml @it”. Because apparently the plugin doesn’t allow 2 tags with the same name.

    I understand the reason, but this could be avoided using the slug function.


    Tag name: wpml
    Slug: wpml


    Tag name: wpml
    Slug: wpml-it

    I hope this is clear and is something that can help other people using the plugin.

    • WPML hooks to the tag and category display and removes these @lang additions. You only see them as admin, but they shouldn’t appear on the public pages (assuming that the proper WP API is used to get tags and categories).

  8. I’ve just installed the plugin, and the one thing I noticed so far is that links and link categories are not translatable. I have a “Links” widget, and it would be nice if it was also language-aware. Seeing what marvelous job you did with the posts and pages, this should be a piece of cake 🙂

    Thanks for a great plugin!

  9. Hi,

    I too think that No.1 is the highest priority. A lot of basic users (such as myself) want to be able to put just a series of flags horizontally in the Header area to the right, as can be seen in several sites of the WPML showcase list.

    I am using Atahualpa but am going nuts trying to do this. Any suggestions?

    • Hi,

      Regarding language flag icons at the top of the page…
      I’ve just been using this plugin and wordpress for a week, so this solution may be a bit basic, but here it is I thought I’d share my basic solution:

      In your theme’s functions.php file, add this:
      (you can mess around with the DIV style to get the position where you want it)
      This worked with my hybrid theme.

      function languages_list_header()
      $languages = icl_get_languages('skip_missing=0');
      echo '';
      foreach($languages as $l)
      $name = $l['native_name'];
      $url = $l['url'];
      $country_url = $l['country_flag_url'];
      $country_code = $l['language_code'];

      echo "";

      echo '';

      # put this at base
      add_action( ‘hybrid_after_header’, ‘languages_list_header’,10, 1 );

  10. Hi!

    Could you please suggest a mod to the standard CSS in language-selector.css (or wherever) to alter the Selector so that all options would be visible (not hidden) and they’d be listed left-to-right instead of top-to-bottom?


  11. The Language selector is not compatible with lightbox. The switcher does not shade, when it should. Do you have a suggestion? I tried to set up a custom language switcher, but after several fatal errors I gave up.


    • You need to control the z-index for WPML’s language selector. To do this, add the following to your CSS:

      #lang_sel { z-index:9; }

      In language-selector.css it’s first line of res/css/language-selector.css.

  12. On top of my wish list of things to to add for WPML I’d say admin slug rewrite option for custom post types. It’s easily more important than not being able to style the language switcher (it’s so easy to create one of those by yourself).
    Say you’re adding a CPT and want two different slugs to present the posts’ parents with their respective translation. Sure you can add 1 CPT for each language but if the option existed it would be a whole lot more effective.

  13. I think there are lots of improvements apart from the listed above. Working with this plug-in has been a real pain, especially for cms wordpress installations. Completely agree with Staffan.

  14. Hi! It would be great if I could use more than one site logo (and footer logo if possible) e.g. an english logo for my english pages, and a logo in local language for other languages. Because in many occasions, the tagline, or a slogan is embedded in the logo image, and it is left untranslated when the page language changes. see below in my page, the page is turkish, but the logo says “Business Development & Marketing Solutions”:

    keep up the great work!

  15. I would be really keen to know if WPML will support languages for different countries, e.g. English in UK (en GB) is different from that in US (en US). If it already allows, Would be great if someone can share the details.

      • So, essentially I can generate a complete list of english variants. Whats the default variant for English. Is there a demo site where I can try out these features, before I decide to adopt this in our proposed CMS site ?

        • The default English slug will be ‘en’. You can create any that you want. For example, for US and UK English, I’d create ‘en_US’ and ‘en_UK’. You can edit this in your site in WPML->Languages->Edit languages.