How to use DeepL Machine Translation with Polylang Pro

Before you start using DeepL with Polylang Pro, it’s important to understand a few current limitations of the integration. While machine translation can save time, there are some specific cases where it may not work as expected or not deliver the results you’re looking for. Let’s take a look at the main limitations:

What DeepL machine translation can’t do

Not compatible with Elementor

⚠️ Important Warning: Machine Translation DeepL doesn’t work with Elementor

At the moment, our DeepL integration doesn’t work properly with certain page builders like Elementor, because DeepL doesn’t handle their auto-generated content out of the box.

Does not translate the entire site at once

⚠️ Machine Translation is Not Bulk Translation

The Machine Translation feature works on a per-post, per-page, per-product, or per-CPT (Custom Post Type) basis. It does not support bulk translation of the entire site with a single click. Many users have assumed that this feature translates content across the entire site at once, but it only works for individual pages, posts, products, or CPTs.

How to enable automatic translation with DeepL

Now that you understand the current limitations of DeepL machine translation, here’s how to set it up and start translating your content automatically. Whether you’re using the Classic Editor or the Block Editor, these steps will guide you through enabling machine translation for your pages, posts, custom post types and WooCommerce products.

Step 1. Get a DeepL API key: Visit their site at https://www.deepl.com/en/pro#developer to generate an API key that suits your needs.

Step 2. Download and install Polylang Pro (if not done already): Version 3.6 or later is required.

Step 3. Activate the Machine Translation module: Go to Languages > Settings > Machine Translation > Activate.

  • You should now see a “Settings” button under the Machine Translation section. Click on it to access the settings panel for Machine Translation.

Machine Translation Settings

In the Machine Translation settings, you’ll encounter the following options:

  • API Key: This is where you’ll enter your DeepL API Key. You can find it at the bottom of your DeepL account page.
  • Formality: Select whether you want the translated text to be in a formal or informal tone.

The Machine Translation panel in Polylang Pro’s settings

Enter your DeepL API key and click the “Check connection to DeepL” button.
Once successful, you’ll see the message “Your API key is valid” with the field highlighted in green.

Next, select the preferred level of formality for your translation from the following options:

  • Default
  • Prefer formal (Follows conventional rules of grammar and vocabulary, with a more rigid structure).
  • Prefer informal (Allows for a relaxed tone with colloquial language, contractions, and idiomatic expressions).

Checking the API Key’s validity

Data used: Once translation starts, a “Data used” field will appear in the Settings, showing the percentage of characters translated and a progress bar for remaining characters before a top-up is needed.

Progress bar with the remaining characters until you have to top-up

 

Use automatic translation for pages, posts, and WooCommerce products: Open the item you want to translate. Click on the DeepL icon to enable machine translation. Click the “+” button next to the target language flag.

Step 4. Use automatic translation for pages, posts, and WooCommerce products: Open the item you want to translate. Click on the DeepL icon to enable machine translation. Click the “+” button next to the target language flag.

DeepL integration with Polylang Pro

Also translate interface strings with DeepL (Polylang 3.7+)

In addition to translating posts, pages, products, and other custom post types, you can now use DeepL to automatically translate all the strings available in the Translations table (Languages > Translations).

How to use machine translation for strings:

  1. Go to Languages > Translations in your dashboard.

  2. Scroll down to the Machine translation section located next to the export/import options.

  3. Select the target language by ticking its checkbox (1).

  4. (Optional) Use the Group filter if you want to translate only specific sets of strings (e.g. WooCommerce). Leave it unfiltered to include all (2).

  5. Click the Translate button. All selected strings will be translated instantly using DeepL (3).