This release of WPML makes it much easier to run listing, directory, e-commerce and classifieds. It also improves stability and compatibility with a number of themes and plugins.
Display untranslated content without duplication
Up until now, you had to duplicate content in order for it to show if it’s not yet translated. This is fine for blog posts and pages, which don’t have much interaction with other content. However, content-driven sites such as directories, listing, classifieds and e-commerce sites are a lot harder to run when you need to duplicate their content.
Here is a video that I prepared for the beta announcement blog post, which shows how it works:
After you update to WPML 3.9, go to WPML->Translation Management–>Multilingual Content Setup. Besides a cosmetic update to the page, you will see new options for translating posts (Posts, Pages and Custom Post Types).
Use the new translation mode (Translatable – use translation if available or fallback to default language) to display posts even if they are not translated. For example, you can see this running on our own blog in languages other than English.
Please note that this new translation mode works only from the site’s default language to its other languages. You can create content in the site’s default language and it will automatically appear on other languages even if not translated. It doesn’t work the other way around. If you create content in another language (not the site’s default language) this content will not appear on other languages.
BTW, this new translation mode makes WPML and our Toolset plugins a lot nicer to use together. The most popular kind of sites that developers build with Toolset are classifieds and directory sites. You can see some of these sites in Toolset showcase section for classifieds and directories.
Now that you can display untranslated content without duplication, it makes a lot more sense to build such sites with WPML and Toolset. I’ll write more about this separately, to give you some creative ideas.
A dedicated Translation Services listing page
You probably know that in the past 2 years we’ve been working closely with leading translation services to offer complete integration with WPML. Today, most of the world’s leading translation services are already directly integrated with WPML.
To you, it means that you can get very high quality translation work, from the best services available, without wasting time passing content back and forth.
To make it easier to find the best translation service, which is ideal for your projects, we moved the translation services to their own admin screen under WPML->Translation Management->Translation Services.
The listing page includes a search, so you can look for translation services by keywords (like, if you’re looking for a service that specializes in Medical, or Industrial). And, you’ll probably notice the ‘stars’ rating in our table. Since WPML acts as the gateway to sending and receiving jobs, we can gather statistical information about the speed in which translations get back and the popularity of translation services. We hope that this information will help you pick a translation service that’s right for your needs.
Better email notifications for translation jobs
Still on the subject of managing translations easier, we’re completely revamped the notifications system. Now, you can choose to receive notification emails about completed translations “as translations complete”, “daily” or “once a week”. The content of these emails depends on the schedule. Notification emails will give you a summary of what’s done and what still remains to translate, so you have a complete picture.
Restored the ‘show differences’ option in WPML’s Translation Editor
WPML used to have a handy feature to show you what’s changed in the original when you’re translating. Somehow (due to an overlook on our side) this feature vanished a few versions ago. Thanks to the keen eye of some of our clients, we noticed it’s gone and we re-introduced this feature with a bit of polish.
Now, when you translate with WPML’s Translation Editor, you can quickly see what changed in the content which requires an update to the translation.
Added translation jobs deadline
Last but not least, WPML 3.9 allows you to set the deadline for translation work. This deadline is visible to your translators and to you, so that translator can prioritize between more urgent and less urgent work.
This feature already works with your own translators (translators using WPML’s Translation Editor) many of the translation services who are integrated with WPML. If the service that you’re using still doesn’t have this integration, remind them you need it. The more clients ask, the faster it will happen.
Improved the workflow when translating page-builder content
Until now, WPML got into a corner when:
- Using a page builder
- Translation for something is “in progress”
- You’re updating the original
Now, you can update the original at any time without running into problems. WPML will make the translation update appear smooth and natural. Any partial translation that you did will continue and the Translation Editor will include the new or modified content for translation.
How to Update
As always, we highly recommend backing up your site before you update WordPress, the theme and plugins. We always run comprehensive testing before we release new versions of WPML, but there’s a chance that we didn’t test a specific combination of WPML, theme and plugins on your site.
You will receive this update automatically to WordPress for all of your registered sites. You can always download WPML from your account and update manually.
Feedback?
How do you like the new features in WPML? Let us know by leaving your comments.
Hi,
Great to hear about the update. I was wondering what happened with the workflow change for page builders? Do you have some information when this will be fixed?
Thx
Related Post:
https://wpml.org/errata/translation-editor-strings-ignored-after-editing-the-translated-post-in-wordpress-native-editor/
I went over my notes 3 times and I somehow managed to forget this major change. Yes, it’s included in WPML 3.9. Now you can update content created by page builders and you’re not going to run into problems using WPML’s Translation Editor.
Hi Amir,
This is awesome and will save us so much time! Thank you, you made my day 🙂
Best
…just one additional question. Will it be still necessary to finish all translation jobs (all translations show the pencil icon) when switching from page builder editor to WPML Translation Editor?
Thx 🙂
No more. You’ll just see that content as “needs update”. We auto-delete the old translation jobs, but we save all the partial translations that you did in them. Next time you send the original to translation, you’ll already see the sentences that you completed before as still complete. You’ll need to translate only sentences that you didn’t translate before or you added in the last edit of the original.
That’s fantastic news, I have a site with 158 english pages and 8 languages but translations of these languages are for only 6/12 pages – so I was duplicating the pages each time. So right now my site has 1,264 pages. Look forward to this release and testing, presume it’ll just be a case of selecting that option and then deleting duplicate pages gradually.
You can do that. Then, as you translate pages, the real translations will appear instead of the duplicates. We have a script that will help you delete these duplicates. Please start a support ticket, ask for it and add another comment here with its link. I’ll pass that ticket to the right developer who knows what I’m talking about.
Displaying untranslated contend is really a game changer in many cases, thanks for that!
As use cases you mention e-commerce websites but woocommerce isn’t mentioned and the woocommerce multilanguage pack hasn’t been updated for what I seen in my downloads page. So, is ‘fallback to default’ availabe for woocommerce products?
We updated WooCommerce Multilingual plugin ahead of time, so that it’s ready now. You can go ahead and try it on a site with WPML+WooCommerce+WooCommerce Multilingual. Just make sure you’re using the most recent versions of all three plugins.
Unfortunately, when I turn on this option (display untranslated content) for products and variations, variation names become blank in selectors on product pages.
Hello Orto,
Could you please create a support ticket, so that we could better help you troubleshoot the issue?
Otherwise, it’s quite hard to tell what’s causing this and sport the issue.
Hello Andrea,
First of all, let me thank you for your prompt reply. This feature is more than useful for those who have just started translating their websites.
For this specific issue, I will surely create a support ticket.
Hi, when you have created the support ticket please paste here the link so I can follow, thanks!
Amit,
My support ticket is here: https://wpml.org/forums/topic/variations-blank-if-i-want-to-display-untranslated-content/
Thank you.
Sorry for being slow to respond here. Your quick report allowed us to pinpoint the problem and we’re pushing an update for WPML today, which fixes it.
Thank you Amir!
Hello
The variation products’ blank issue still persists for me.
I’ve re-installed all of the plugins such as WordPress, All of the WPML plugins today. Was this solved?
I am actually confused with the settings which one to make “Translatable – use translation if available or fallback to default language”…
I also noticed another issues.
1. Product Categories and Product Tags are shown in English even in other languages.
2. Language switcher doesn’t work correctly (Even if I tried to switch the language, the language won’t be switched. I can see that the URL parameter is already lost.) when enabling “Translatable – use translation if available or fallback to default language”
I guess these above are common issues, does this happen to your environment?
PS.
the 1st issue happens if a product is duplicated, product categories and tags are shown in translated language, that seems okay. however, if a product isn’t duplicated, categories and tags will be shown in English (default language). at this rate, the new feature can’t be cool…
Thanks for the additional info. We’re aware of the first issue that you reported and it’s getting fixed in an update that we’re planning for tomorrow. I’ve asked our developers to contact you about the two other issues and see if they know about them and are also handled.
Thank you dear Amir. Okay and looking forward to the fixes! 🙂
Nice to see the page-builder update! Will this release now work with Beaver Builder’s ‘themer’? Themer was a real game changer but wasn’t usable on sites that need translating (with WPML).
thx
We’ve been working with Themer folks for a while now, but I don’t think that it’s all ready. I’ll ask our compatibility team folks to update you on the exact status.
ok, cheers
Hi, Amit here I am the Compatibility team leader, we are in touch with the Beaver Themer team, we have at least one issue reported and I will update here, hopefully by the end of this week about the state of things.
ok, thanks Amit. I saw Beaver Themer have issued an Alpha which apparently includes WPML integration, but yeah, only an Alpha release.
Thanks, my team and I are also keenly awaiting an update on this issue.
Finally! That’s fantastic!
Thank you!
Thank your for the great feature! I had a similar feature request with Toolset support team few month ago. I would like to make a custom post type which generated by Cred front-end submission form multilingual automatically, that means wherever the users submitted a form by their language on my site, the post will automatically generate multilingual posts. please notice, users can submit a form on any languages site, it is not limited using default language. your supporters provided a piece of code below
$my_field_en = get_post_meta($post_id_en, 'wpcf-' . 'wpcf-wpcf-destination-state', true); //get the value of my-field
$post_id_cn = apply_filters( 'wpml_object_id', $post_id, 'gust', FALSE, 'zh-hans' ); //
update_post_meta($post_id_cn, 'wpcf-' . 'my-fileld');//
$my_field_en = get_post_meta($post_id_en, 'wpcf-' . 'meals-plan', true); //get the value of my-field
$post_id_cn = apply_filters( 'wpml_object_id', $post_id, 'gust', FALSE, 'zh-hans' ); //
update_post_meta($post_id_cn, 'wpcf-' . 'my-field');//
now, this feature is working fine. but it still has a flaw. after user submit a form, and then if he wants to modify anything as well, any changes will not rewrite other multilingual posts. site editor must manually adjust any changes post by post. I know this feature is possibility, but it should need a plenty of works. So, has this version resolved this problem? if I add the code above, do I need to set this figuration? Thank you so much again!
Yes, we noticed this on one of our reference sites too. We’re adding shortcodes to Toolset, that would allow you to check the language. Our idea is to make it easy to limit the new-content forms to the site’s default language and redirect to that language if you’re currently on a different language.
This way, forms will always submit content in the default language and the new translation mode will allow to display this new content on all the site’s languages.
Is this what you’ll need also or something else?
Is there a way then to delete the duplicated content and just use the fallback method? As it stands it goes to the duplicate.
This page explains how to remove the duplicate content:
https://wpml.org/documentation/translating-your-contents/displaying-untranslated-content-on-pages-in-secondary-languages/deleting-duplicate-content-after-changing-how-content-is-translated/
If it’s hard to follow it, please get help in our support and link to that page, so they know what you’re doing.
Will you guys not just be adding the remove duplicate function to the plugins? A lot of people will not be comfortable editing the database themselves without support and that seems like a lot of tickets to have to deal with.
Display untranslated content without duplication, can one choose this behavior per content (post, page, articles…)?
Thanks
Sorry for being slow. This feature is for the entire post type. If you want to duplicate individual posts, you can use the ‘Duplicate’ buttons in the post edit or from the translation dashboard.
Hi wpml team,
Release wpml 3.9.0 is out super 🙂
But when will be out release wpml for woocommerce in new version?
Thanks for answer.
We already released an update for WooCommerce Multilingual which works with the new features in WPML 3.9, so you can go ahead and use it.
Great new features!
But I have a doubt/dilemma: the new translation mode (Translatable – use translation if available or fallback to default language) displays posts even if they are not translated works only with posts in default language. Ok. But what I do in other way around? I have a website with 3 languages, with untranslated posts in all 3 languages (actually, this website has 3 “official languages”, english, portuguese and spanish) – and I want to display all posts for all audiance. So, in this case, I have to duplicate posts as before and disable the new option?
Any chances (in the next releases) to this new feature display all posts in all languages without need to duplicate them?
This is something tricky that we’re still figuring out. Whatever solution we pick is not going to be perfect and will have disadvantages.
The current implementation that we have, which only works from the site’s default language is very efficient. It allows to display that content on other languages with few simple queries, so it barely slows the site down. If we check for the existence of untranslated content in all languages, it will work, but will be much slower on the front-end. Also, your site will start having a lot of mixed content. For instance, your German pages will start including Italian posts too. Did you consider if this really helps the German visitors?
We built a test ‘classifieds’ site using this translation mode. For our site, we redirect all content submission to the site’s default language. This way, if you’re on German or Italian (for example) and you want to submit content, we’ll send you to the English form. This way, you understand (hopefully) that new submissions should be in English. It makes all the original content in English and it’s possible to translate it. This isn’t perfect. Without perfect automatic translation, I don’t see a perfect solution.
Another option (which also works for our reference sites) is to automatically duplicate content after it’s submitted. So, if you have a site in English, German and Italian and you want all submitted content to appear on all languages, you can tell WPML to duplicate these submissions to all languages. With this solution, the untranslated content appears everywhere and there’s zero speed impact on the front-end, which is what matters most.
Does this help at all?
Hi Amir! Thanks for your reply.
I understand your point and you have reason: I believe that in most sites using WPML, there are a default language that works as real “main language”. And in a perfect project every content will have translation. And, in my opinion too, good speed in front-end is a need. So, your solution to keep the new translation workflow only to site’s default language is a good decision. Only to emphatsize: I do think this is a excelent new feature and definitly I will use in next projects. Congrats!
For now, in a specific project, I decided remain duplicating posts – even if there aren’t translation –, because this way is easier to my editors understand the site’s behavior: they have to duplicate everything (even because I’m using other tools like Download Monitor, that works with WPML and still need to have duplicate posts in every language).
This website that I’m working is a project that will run in all Latin America, so (in this case) mixed content, with different languages, is kind expected (the main content will have translation with WPML and, for posts in only one language, the vistor could use Google translator, if they don’t undestand). In the future, if you can manage how do this without duplicate content (with few queries and good speed) would be great!
Thanks for your understanding. We are going to check if we can find a smart way to implement symmetric functionality for the new “display as translated” mode. I’ll write about it when we know more.
Hi,
I got so excited about the possibility to get rid of duplicates. This could be a complete game changer as we run a multilingual website with a blog, hundreds of events and locations, and thousands of directory entries. Making sure everything is properly duplicated is a real pain…
That was until I realized, that it wasn’t usable at all.
Please note that this new translation mode works only from the site’s default language to its other languages. You can create content in the site’s default language and it will automatically appear on other languages even if not translated. It doesn’t work the other way around. If you create content in another language (not the site’s default language) this content will not appear on other languages.
While I appreciate the effort, it’s basically useless in real life situation. Are you planing to improve this in further releases ?
Thanks,
Marc
Your feedback is very valid and makes sense. I explained the limits and possible solutions (as we see them) in another lengthy comment:
https://wpml.org/2018/01/wpml-3-9-released/#comment-1712539
Can you have a look and tell me what you think?
Hi Amir, thanks for pointing to your post. I’m not sure I get the performance explanation, if you can solve looking up the original language with a few simple queries that barely slow down the site, there’s got to be a way to look up for untranslated content in 2 languages (so for a total of 3 languages on the site) with twice the few simple queries. In our case, it should only do so for a limited amount of post types: blog articles, event locations, events, and directory entries.
Maybe it helps if I explain what the biggest pains are when working with duplicates:
1. They are pure administrative overhead, with no added value than allowing a post we already have to be displayed in another language.
2. They don’t work well with front-end applications that let users interact with certain posts (events in our case):
– Depending on which language the user is in, editing an event might create a translation rather than edit the original post and update its duplicate.
– If the front-end allows for users to duplicate older events as a template for creating a new one, somehow the new event is attached to the duplicate of the original event, so we have to manually remove the duplicate, delete it and create a new one.
Automatically duplicating content doesn’t really solve all the problems. The capacity of getting rid of duplicates entirely for certain post types would put WPML in a whole new league for managing the complexity of a multilingual site. If you want to experiment with performance on a multilingual site, I’d be happy to test a version that solves this problem.