The vast majority of WordPress sites today are non-English sites. Today, WPML makes it easier to run multilingual sites, which don’t have English as their default language, or don’t have English at all.

Why English  is  was a special language in your multilingual sites?

WPML’s String Translation gets texts from different sources. Most importantly, it get strings from GetText functions (WordPress, the theme and plugins) and from texts that you enter in different places in the WordPress admin.

Almost everything that comes from GetText will be originally in English. You want to enter texts in the WordPress admin in the site’s default language.

The problem, until now, was that the String Translation had only ONE source language setting. Then, we even removed that because setting it to not English created mountains of problems.

Now, source language for strings is making a big comeback. Each string has its own source language and you can easily set the language of individual strings, or entire contexts.

Let’s look at a practical example. Supposing that your site runs in Spanish (default), Catalan and French. No English. Your theme and plugins are coded with English, as their original language.

In this example, you will want to translate the texts in the theme from English to Spanish, Catalan and French. You will want to enter the site’s tagline and widgets in Spanish and translate them to Catalan and French. You certainly don’t want to go through English.

Enter texts in your normal language Translate to the site’s other languages in String Translation
Site name and tagline in Spanish, in the WordPress Settings admin screen
We can translate the tagline from Spanish to the other languages in the site
The Spanish homepage (original language) The French homepage (translation)
‘Original’ Spanish on the homepage
French translation on the French homepage

With this update to WPML, you can do just this. WPML assumes that any texts coming from WordPress, the theme or plugins is in English. Even if your site doesn’t have English, you will still see English as the source language of these strings and you can translate to all of your site’s languages.

WPML will also assume that any texts that you enter in the WordPress admin will be in the site’s default language. You will be able to translate these texts to the other languages in the site, without going through English.

How to set the source languages of strings

You can change the languages of specific strings or all strings that belong to a domain.

To change the language of specific strings, select them and click on the new Change language of selected strings button. Then, select the new language.

Change the language of selected strings

You can also change the language of entire contexts. This is useful when you get a theme or a plugin, that’s coded in a language other than English. Click on the new link, at the top of the String Translation page, Language of domains.

Click on the link to ‘Languages of domains’

Then, choose the new language.

Dialog for setting the language of entire domains

The dialog will show you a table of the strings in that domain. You can choose the new language and also make it the default language for new strings that will be added to that domain.

Existing sites remain unchanged (unless you want to change strings)

Existing sites are not affected by this change. Since you HAD to write texts in English before in the WordPress admin, when you update to the new version of WPML, WPML will know that existing admin strings are in English. If you want, you can now change their language and enter them again in your site’s default language. However, this change is entirely up to you. If you don’t want to go through the hassle, you don’t have to.

To update the string languages of existing sites, follow the same as shown before. You can update individual strings or entire contexts.

Known issues

This beta version isn’t yet working completely smoothly with Gravity Forms and with our Layouts plugin (packages translation). There may also be a few minor performance issues.

Every known issue will be resolved by the time this version goes to production. We recommend to skip your testing now with this beta version and Gravity Forms and Toolset plugins, as we are working on known issues.

Download the beta

This version of WPML is currently in beta. It’s been a huge change in WPML core and the String Translation and it’s not ready for production sites yet. We are inviting you to try this beta on your development sites. We’re run a lot of tests, but we can’t cover all combinations of themes and plugins. Before this version moves to production, we are asking your help to test with your development sites. If you are running a site that has a default language other than English, this update is very much for you. Download the beta and try it.

To download, go to your WPML account. Click on Downloads and scroll all the way to the bottom. Download the CMS Beta Package. This ZIP file includes all of WPML’s components. You need to use the WPML components from this ZIP only and not mix development versions with production versions.

If you are using WooCommerce Multilingual, use the beta from that package too. The WooCommerce Multilingual beta is updated for this change in string languages.

Feedback?

With this update to WPML, String Translation should become a lot easier for you. Please tell us about anything that doesn’t make sense or requires complex setup. We tried to set the best defaults, so that you can just ‘translate’, without having to go through language definitions. If we missed anything, tell us.

To report problems, best to create a thread in our support forum. You can follow up with a comment here, so that we can see all related threads (and handle them).

Questions? Suggestions? Ideas? Leave your comments and we’ll get back to you.

63 Responses to “WPML Makes it Easy to Run Sites Without English”

  1. Hooray!

    I’m really grateful for this beta release.

    It makes the life much easier also for people who have English on their site, but would like to change the strings dynamically without touching the code.

    It also makes it easier to test the website.

    Good work, keep it up :).

    • Great, I’m very happy to hear that this helps. Let us know how it’s working for you? After you experiment with the new beta, please come here again and leave your feedback. We want to know if it’s all working for you and if the new UI is clear. Thanks for your help!

    • Sorry about this. It’s clearly miscommunication between our support and development and I’m responsible for it. I pushed this ticket to the upcoming update. It’s a very important feature and needs to work.

  2. When the new official release?
    I report my experience: I purchase the plugin, I worked with this site. The plugin WPML worked as I worked, so I did not worry. I published the site on completion of work. Days after my client says that the site does not work well. Regulations control the site and I realize that WPML does not work perfectly. Please help me to WPML and tell me to wait for the new version. And I asked myself: what can I say to my client? Your published site does not work?
    If you go back expect the new version of WPML (before considering the purchase) to run your site in multiple languages. Anyway, I would think other solutions in the market with plugins that have good support for that bought their product

  3. YEAAH !!
    One of the missing point in WPML.. A real time saver stuff !
    I haven’t tested it for now but I’m already so happy & excited to try this in my next multi language project.
    Thank you

  4. Seems like a much more natural process for people to translate their sites.

    Now we only need to spend a good amount of time to re-educate people; I think that is going to be the biggest challenge of this switch 🙂

    Good work, thanks!

  5. Sounds great!

    Will the structure and semantics of the icl-tables be changed due to this?

    Regards,
    Anders

    • No change to table structure or API calls. We’re using a column that was there from the beginning, but never used.

  6. Hi,

    Looks great update, non english site with wpml is (was ?) a nightmare.

    What about permalinks ? Are they still first in english language (needs big redirection work) ? Or they keep now native language, no need to redirect all pages/products… ?

    • Your current sites remain working without change (unless you intentionally change them). You should be able to create e-commerce sites with slugs without English now. This beta package includes also WooCommerce Multilingual. Try this and let us know how it’s working for you.

    • The tagline and site name should automatically appear in WPML->String Translation. You only need to go there and translate the strings. The logo depends on the theme. Some themes allow you to set the logo from admin options. In this case, you can enter different logos via the String Translation. If it’s hard coded in the theme, you need to edit the PHP and make it language dependent. Then, you can translate.

      Does this help or are you looking for something else?

  7. This is very important, good job!! Like Martin however I’m getting frustrated about the suppport, since I’m not able to upgrade and work on translations for stable realeases since 22-aug-2015, see this topic.

    • I suspect that the support person may not have completely understand the scenario that you are describing in that support thread. Let’s try again and get this resolved.

      Can you create a fresh test site with the current WPML beta? Do your steps with that beta and stop where you see the problem. Create another support thread about it and add a message here with the URL. I’ll make sure that it goes to the right person (WooCommerce Multilingual developers). We will need a backup of that test site. You can give it using the Duplicator plugin. Then, WooCommerce Multilingual developers will continue exactly where you stopped. Instead of reproducing the problem and possibly doing something else, they will take your test site and check what you are reporting on it.

      I’m asking to do this on a fresh site with this beta, because it changes many things related to string translation and WooCommerce Multilingual.

      Will this work for you?

      • Hi Amir,

        Thanks for your reply.

        It’s not a problem with WooCommerce Multilingual, but with String translation. Also I don’t create a fresh site, because on fresh site it’s working fine. But it’s not working on my livesite, even when I do a full reset of WPML. Ofcourse I don’t test it on my livesite, so I have setup a staging site which is accisible for WPML as well.

        See https://wpml.org/forums/topic/adding-strings-with-translate-texts-in-admin-screens-not-working/.

        Kind regards,

        Willem

        • Thanks for starting this support thread. I’ve asked our support manager to assign a senior supporter to it. We need to see what strings you are referring to and what you are seeing.

  8. This is great news. However, I suspect that one of our recurring problems will remain.
    We have no way of controlling what data is provided for secondary languages (whatever the primary language may be) for the fields: meta title and meta description of Product Categories (Woocommerce).This lack of “translation” or ability to insert this data for the translated product categories is crippling in terms of SEO

    Only one plugin SEO by Yoast allows this but we do not wish to use that plugin as our current plugin SEO Ultimate is better for other areas.

    We make websites regularly in different languages and use WPML as well as Woocommerce. We would be happy to test out your version as we have been invited to.

    Best Regards

    • WPML will let you translate custom fields without any problem. If you use Yoast SEO, it’s all pre-configured and you can just translate. If you are using a different plugin for SEO, you can still translate these fields using WPML. First, go to WPML->Translation Management->Multilingual content setup. There, select the SEO fields and indicate to ‘translate’ them. That’s it. Now, when you translate products, you should see these fields in the translation editor. Does this work for you?

      • Hello Amir, thanks for the quick reply.

        The problem is translating these SEO fields for Product categories, not products. For products, the fields display correctly in the product translation page but for product categories, the page does not display these fields…. hence the problem.
        And our plugin (SEO Ultimate) only allows to enter the data for the main language product category.

          • Hello Amir, incredible, though I tried out the recommended steps, that did not work but in the process I found out how this can work for this plugin, by simply changing the language selector at the very top (main bar) of the WP dashboard.

            Unexpected and sweet, I wouldn’t have come across it without this thread.

            OK, will ask them to join this program.

            For the testing of this beta version, we can help and take part, however, the current multi-language sites we are developing have English as the primary language. Another is a single-language site (non-English) so we might have to wait for another project.

            Let me know if we can help.

            Best Regards,

            Javier

  9. Will this make it possible to dynamicly change the source string as well? So if I place the following line in my code: , will the user be able to change hello to something else like hi?

    • We’re about 2 weeks from finishing development and then another 2-3 weeks for complete testing. If you try the beta now, it would be a huge help for us. The more feedback we get, the faster (and better) this development cycle will be. Our main concern is to make sure there’s no new compatibility issue with themes and plugins. Obviously, we tested this beta, but we want to make sure that there are no surprises with themes that may do things differently.

  10. My wpml is making lots of mess in my site after translating Testimonial from English to French. It now redirect my french main page to a pseudo testimonial link ending in a 404 error. I have create a ticket and support page just telling us that too many people has asking for support so it will take time to reply. My french site is blocked since last night. What a mess!!!! even we are pay client… pity, for my client and site 🙁
    Any on have a solution?

    • Is this a problem with a new site or a site that was running before and suddenly stopped working? If you can paste here the link to your support ticket, I can check more details there.

  11. Hi,

    I tested this plugins and it works really smooth. ALTHOUGH I LOST ALL MY CURRENT TRANSLATIONS after activating…..)

    But there is a major isssue: I use Woocommerce and my products contains files to upload. The media uploader is shown (languages are lost, so I see all!) and the chosen pdf file is not coupled to the product! The complete backend is down!

    Please fix thus bug, I now returned beack to the older version…

    best regards, JP

    • Thanks for helping with testing. We didn’t intend for this beta to go on production sites. It was intended for development sites only. Andrea, WPML lead developer, will get in touch with you tomorrow to get more information so that we can reproduce these problems and fix them. We’ll make sure that anything that anyone reports gets fixed before a production release.

  12. Amir,
    Fantastic! Thanks for the opportunity to help you guys.
    Your plugin is a mandatory tool nowadays. I wish you and your team all the best.
    I will test it and let you know.

    As some people have related, i am in faced of an issue that you guys are already aware for more than a month and as I could see no one is taking care of it.

    Please have a look at: https://wpml.org/forums/topic/language-per-domain-url-is-not-work/

    Is is related with language per domain and ssl.
    I am sure other people will be in face of the same issue i am in front of know as lots of people will move to https.

    Could you please help us with this issue telling to your guys give a more effective action and feedback?

    Thanks.

    • I’m not sure that this fix is included in the beta release, but it will certainly be included in the production release for WPML. I’ve asked the developer who is handling it to respond in the forum and give you a patch, so that you can use https with languages in domains ASAP.

      • Amir,
        Thanks, a lot for your support.
        Ivette ha answered me.
        I have installed the beta version metioned, and I have not seeing any error for while.
        I will keep you posted.
        Thanks!

  13. Hello Everyone,

    I got the invite to beta test and just looking at this thread gives me a feel that most comments are not in respect to the beta testing and some how steer towards support for individual experiences with some other versions of the WPML plugins.

    This takes the zest out of this particular thread and I fully do appreciate Amir trying to resolve being on the other end.

    Sorry if i may have offended anyone unintentionally but can i please request Amir and others to stick to the tread outcome and redirect all other queries to support.

    Thanks Ketan

    • Thank you for your support. I really appreciate it. We are doing our very best to handle all issues in a timely manner. We’ve learned from experience that even bug fixes cannot be done in panic mode. When we release quick updates that resolve bugs, it doesn’t allow enough time for testing and these fixes may trigger other problems. The more feedback we get about the update to the String Translation, the better. In parallel with this, we are also handling bugs and always working to improve performance.

      • Makes absolute sense Amir and being one, i also understand the situation of developers when it comes to fire fight the situation with clients as they do not know its a 3rd party plugin. Anyways all the best !

  14. Hello!
    Just tested the beta on our testsite and the issue described in the linked support question is still there.
    It worked with an earlier version of WPML and Woo Multilingual but not now. I also tried to downgrade Woo Multilingual like 8 versions down, but still had the same problem.
    Luckily our site is not having its peak now, but we need to be able to add two products with different Product Add-ons information asap.

    https://wpml.org/forums/topic/woocommerce-multilingual-product-add-ons-double-products-with-wrong-info-added/

    I am also adding our answer from Woothemes regarding the same issue (Product Add-ons) below.

    “Thank you for contacting WooThemes. I am sorry about the trouble here! I’d like to help, but the issue here is that WPML and WooCommerce Multilingual is not currently compatible with our Product Add-ons extension.

    From the ticket you linked to, it appears as though WPML is now aware of the issue and that they’re working on improving compatibility between the two extensions.

    I’m sorry, but there isn’t much else I can do 🙁

    Thanks for understanding.”

    Thankful for a swift solution to this.

    Regards.

    • Thank you for your report. This beta only includes the (major) change for the string languages. Other things that we are working on are not part of this beta. They will be included in the stable release. We pushed out this beta so that you can experiment with the new feature of setting source language of strings. This is particularly useful for sites that don’t have English as the default language.

      I’ve asked WooCommerce Multilingual developers to update your thread with the current status of that problem.

  15. Hello!
    I installed and tested WPML Beta on a testing environment that I created for the following support topic some time ago:
    https://wpml.org/forums/topic/breadcrumbs-in-english-are-displayed-correctly-but-in-italian-they-are-not/
    As I wrote there, the original problem has been resolved in this beta version, but now it appears on the English breadcrumbs.

    Also, in the debug log I found this error:
    [14-Oct-2015 09:20:24 UTC] PHP Warning: Invalid argument supplied for foreach() in [….]/wp-content/plugins/wpml-string-translation/lib/wpml-st-autoloader.class.php on line 124

    I will keep testing and let you know if I find anything else.

    Regards,
    Roberta

    • Thanks for helping with this testing. About the breadcrumbs, there is some communication problem between our support staff. The developer who checked it reports that it’s working. The supporter who helped you, reported that it’s not. I’ve reopened it and asked the relevant people to make sure that it works for YOU.

      This beta allows you to work more conveniently with WPML when the site’s default language is not English. I think that you’re running a site in Italian. If you update WPML on that site, everything will work without change. However, now you can go to the strings and set a different source language for the Italian texts. This way, you can enter the texts in Italian in the WordPress admin and translate to English in String Translation.

      Does this help?

      • Hello Amir,

        First of all thank you for reopening my breadcrumbs support issue.

        About the warning in the debug.log I already got an answer from the lead developer telling me that it it has been already solved and it will be released in the next beta or in the official release version.

        I am trying to test the new string translation feature by setting some source strings to Italian and translating them to English. It is very convenient if you just installed WPML on an existing site which language is not English. Unfortunately I already entered all strings in English as instructed in the past so I don’t have many Italian strings left in my String Translation list. I just had few and it seems to work by now. I also tried to add new strings in Italian and translate them in English and they are displayed correctly.
        Overall, I can say that this new feature is very useful and time saving especially on new sites. Good job.

        I will keep on testing and keep you updated if I find something else.

        Actually, I also have some other plugin compatibility issues caused by WooCommerce Multilingual with the Bookly Plugin by Ladela. I hope these will be solved soon, but since they already existed and nothing has changed with this beta version, I will open a ticket on the Compatibility support forum.

        Thank you.
        Roberta

  16. Hi Amir,

    Great idea and work since non-English websites with WPML have been a nightmare to translate.

    Please note that I just tried to install the beta plugin on a(n almost) fresh WP install but without sucess – WPML Beta said that there were invalid plugins so WPML did not install.
    Already installed and activated plugins: Aksimet, Async Javascript, Better Delete Revision, Coming Soon Page & Maintenance Mode by SeedProd, MailChimp Forms by MailMunch, Post Duplicator, ShortPixel Image Optimizer, Simple 301 Redirects, WP Super Cache, WP User Avatar, WPBakery Visual Composer (Artbees Modified Version)

    Any idea which one to uninstall at least temporarily to make WPML Beta install?

    Regards,
    Attila

    • Did you unzip the beta package? The ZIP file contains additional ZIPs of the different WPML components. You need to download it from our site and unzip. Then, upload the components that you need for your (development) site and activate them.

      • Thanks, Amir.

        Unzipped and uploaded cms and string translation.

        Then an other issue turned out: By switching on WPML (and String Translation) plugins, my site based on Jupiter theme has been completely damaged. I mean it seems if all Jupiter theme options would have been reset.

        After switching off WPML the site displays normally.

        Any idea on this incompatibility?

        Attila

  17. Absolutely great, thank you so much for this beta!

    I do update on online website:
    The only think is that as soon as the beta is uploaded you need to re-done all translation on Custom Home Page (if you use it).

    So don’t forget to “save” your texts before doing the update 🙁