We’re almost ready with WPML 1.8.0 (multilingual menus) and are thinking about the next major step for WPML – adding a complete translation workflow.

Many folks get help from translators. These can be volunteers or freelance professional translators. Today, in order to translate, you need to make these translators into editors and teach them about WordPress. We’re going to change this by introducing a completely new Translator role.

A Translator would be a user who can just translate. A Translator cannot create new contents, cannot edit existing contents and cannot administer anything in the site. Instead, translators can just translate. And, they can translate the documents that the admin has sent them for translation.

This work is inspired by our Drupal Translation Management module and scaled down to WordPress.

Setting up Translators

First thing you’ll want to do is set up translators. Translators can be existing WordPress users or completely new users. WPML will give them translator privileges in the languages that you choose.

When translators log in, they would see only the Translation jobs queue. This queue includes jobs that you’ve sent them for translation. They can go to each job, edit it and save the translation.

Sending Documents to Translation

When you want to send documents to your translators, you’ll go to the Translation Dashboard. Here is how it looks like:

Translation Dashboard in Drupal

The Translation Dashboard shows you which documents in your site need translation. You choose the ones you want and send to your translators.

Then, their status changes from Translation needed to Translation in progress.


The translators get email notifications about new work waiting for them.

They log into WordPress and see the list of pending jobs. It looks something like this:

Translation jobs queue

Each translator sees the queue of jobs that waiting for him/her.

Translators then click on Edit to start translating.

Side by Side Translation

The translation itself is done using the Unified Translation Editor (not the normal Add translation link which creates a new blank page).

It doesn’t matter if they’re translating a blog post, or a page, a a custom data type with different fields. All translations go through the same editor.

The editor adjusts and displays the right fields for different content types. In each field, the translator can see the original text and enter the translation.

Unified Translation Editor

The fun thing here is that translators don’t need to learn about anything related to WordPress. They don’t need to learn about custom fields, categories, tags, taxonomy, etc. WPML lets them just translate the texts. Then, it puts everything back into place.

Translators also don’t need to see what’s changed. WPML will show them which fields in the document have changed and need to be translated again.

The Movie

Here is a clip I made showing how this will work (in Drupal).

6 Responses to “Full Translation Workflow and Side-by-Side Translation”

  1. That looks realy nice.
    You guys got very cool ideas how to make WordPress to an allround-cool-tool.

    An Multilingual-WordPress is nice but I’m just speaking german and a little bit of english… so I would just have an two-language WordPress (first time when WPML 1.8.0 is released)… But with this new add-on I could also support for example the russian language because my dad is speaking russian (but he wouldn’t translate my it-articles I think :] )

    Move up, this Plug-In is well done and it’s going to be better than that 🙂

  2. Just the plugin I’ve been looking for, but I’m wondering if it’s possible to add new languages manually yourself. The Norwegian language distinguishes between two sub languages: bokmål and nynorsk. I see you have bokmål already, but I need nynorsk as well. It’s no problem for me to translate it myself, I just need how to add a new language and start translating. Thanks again for this marvellous plugin. Marius.

    • To add other languages, go to WPML->Languages and click on ‘Edit languages’. You can specify the name, locale value and translation to other languages.

        • Sorry to bother you with followups to this post, but I’ve tried to find the “edit language” section but I couldn’t find it. I couldn’t find it under WPML/Languages. So instead I tried to search and add/replace language names and codes in both files and db), but nothing seems to work. I really couldn’t figure out how the language structure is for the plugin. Is there any easy way to add a new language? In my case “Norwegian Nynorsk”. I see it’s already listed in /inc/lang-data.inc. Marius