This is a guide for WordPress developers who are building multilingual sites. It explains how to use WPML to translate the site as you are building it.

Installing and configuring WPML

Start by installing the main WPML components:

  • WPML Multilingual CMS (the core plugin)
  • String Translation
  • Translation Management
  • Media Translation

They are available from your account’s downloads page. Please note that WPML Multilingual Blog account type does not provide access to String Translation and Translation Management components.

Please read the installation instructions if you need help.

When you first activate WPML a setup wizard will help you specify the essential settings required to prepare your site for multilingual content.

Follow the Wizard to:

  1. Set the default language
  2. Add additional languages
  3. Specify where to display language switchers
  4. Register WPML

That’s it! Your site is now ready to translate content.

How to translate pages, posts and custom posts

If you are using WPML’s Translation Management, go to the WPML -> Translation Management page to send content for translation. The first time you visit the Translation Management, WPML will walk you through a quick setup wizard.

WPML is fully compatible with the new WordPress editor called Gutenberg. You can easily translate your content designed using Gutenberg.
Sending pages for translation using the Translation Management Dashboard
Sending pages for translation using the Translation Management Dashboard

Translating without WPML’s Translation Management

If you are the only person translating the site’s content, you can translate posts and pages by clicking the plus and pencil icons, next to content you can translate. You will see these icons in the list of pages and in the “Language” box when editing content.

List of Pages with translation controls
List of Pages with translation controls
WPML Language box when editing a page
WPML Language box when editing a page

This is what the different icons mean:

Icon Current status Action
The content is not yet translated Create a new translation and start editing it
The content is already translated, and the translation is up-to-date Edit the existing translation
The content is translated, but the translation needs updating Edit the existing translation
The content is translated, but the translation needs updating, and a new translation is already in progress Further action is not possible because a translation is already in progress

Translating other site content

Besides posts and pages, there are other elements that you will want to translate. This includes front-end texts coming from your theme and plugins, menus, widgets, and more.

Again, you can send these types of content for translation to others, or translate it directly by yourself.

Taxonomies »

Translating taxonomies

Go to WPML -> Taxonomy Translation to translate tags, categories and custom taxonomy.

Custom fields »

Translating custom fields

You can manually add translations of custom fields directly on the Post Edit screen of the translated post. Go to WPML -> Settings -> Custom Fields Translation to choose which fields will appear in WPML’s Translation Editor.

Images and other media »

Translating image texts

WPML Media Translation allows you to translate images and other media, when you’re using WPML Translation Management.

Translating menus

Use WPML to show different menus for each language. Set up different menus manually or automatically synchronize the menu content.

Widgets »

Translating widgets

Use the String Translation module to translate standard WordPress widget texts as well as texts from custom widgets registered by your theme or plugins.

URLs »

Translating URLs

Edit the permalink directly to translate page names appearing in URLs, and use Translation Management settings to translate slugs of custom post types.

Themes and plugins »

WPML lets you translate the texts that come from the theme and plugins that are running on your site. This way, if themes and plugins are missing some translations, you can add them using the String Translation module.

Admin strings »

You can choose any string in the WP_Options table and make it translatable via WPML. Then, translate these strings using the String Translation module.

E-Commerce sites

WPML offers support for the popular e-commerce plugins:

Forms

For Gravity Forms, use Gravity Forms Multilingual. For other form plugins, you’ll need to create separate forms for each language. For an example, see how to translate Contact Form 7 forms.

Custom elements

When you build custom elements for a multilingual site, you will need to translate them. Read the guide on developing custom multilingual sites to see what WPML offers.