Multilingual Canvas

The canvas theme is retired. Please refer to the following blog post: Saying Goodbye to Canvas

Canvas can power fully-multilingual sites “out of the box” with no configuration. This tutorial shows how to build multilingual sites with Canvas and WPML.

What multilingual sites are

↑ Back to top

When we say multilingual, we mean that the same WordPress install holds content in several languages at the same time. Most themes today come with .po files that allow them to run in different languages. Multilingual means, the site includes content in several languages together.

WPML makes WordPress sites multilingual. Authors can write content in several languages. It also loads the correct .po (actually .mo) files, so that the WordPress, the theme and plugins display in the right language.

Installation and configuration

↑ Back to top

The first thing to do is download and install WPML. Next, click on the WPML menu to add languages. The setup process includes 3 steps:

  • Choosing the default language (the language in which contents are currently in)
  • Adding more languages
  • Adding language switchers to the theme

Choosing languages for the site

↑ Back to top

Until here, it’s all standard. Now starts the fun part – the pre-configured setup for Canvas.

Translating content

↑ Back to top

Once WPML setup is complete, you can start translating content. WPML helps you separate between content authoring and translation. Of course, the same person who writes can also translate, but normally, other people would do the translation. Create new WordPress accounts for your translators. They can have any sort of account type, including even subscribers. Head over to WPML > Translation Management > Translators and make these users translators.

Adding a new translator

Now that you have translators in WordPress, you can send them jobs. Click on the Translation Dashboard tab, choose the documents you want to translate and send to translation.

Translation Dashboard

WPML will send notification emails to your translators, they will log in and translate in WordPress. Each translator sees a jobs queue and can only work on content that you send for him/her.

Didn’t notice anything special about Canvas?

↑ Back to top

Good catch. This is what happens when things are fully integrated – you don’t actually need to do any setup. Canvas uses custom fields in posts and custom post types. The custom fields store the SEO data and the custom types hold slides. The theme includes a language configuration that tells WPML all it needs to know, so that when you start translating, WPML includes the right fields in the translation editor.

Editing body and Canvas SEO fields

When you send content to translation, WPML knows which custom fields Canvas uses and includes them automatically. Some fields get translated and others just copied.

Canvas also stores texts in its setup page and WPML lets you translate them. After you save the options in Canvas > SEO, you can translate these values in WPML > String translation. Go to that page and select the texts from Canvas. Translate and save.

Beyond a blank Canvas

↑ Back to top

Chances are you’re using Canvas as a starting point and not as the final theme.When you add your own custom fields or use new custom types, make sure you tell WPML how to handle them. You can do that in one of two ways:

Via the GUI – WPML > Translation Management > Multilingual Content Setup. Then, choose what to translate.

Choosing which custom fields to translate

In the XML configuration file – open the file called wpml-config.xml and add your new stuff there.