Skip Navigation
Updated
March 26, 2024

Can’t find strings you’re looking to translate on the String Translation page? Let’s go through some common reasons why, and where you can find them.

Most Commonly Searched for Strings

Translatable hard-coded strings

What’s happening?

Why can’t I find these strings?

Solution

What’s happening?

Your theme or plugin comes fully translated, but you can’t see some or all of the translations on the front-end.

Why can’t I find these strings?

You set languages after adding the theme or plugin. So, WordPress didn’t update the translation files.

What’s happening?

Your theme or plugin hasn’t been fully translated into some languages.

or

You want to add your own translations, not use the theme’s or plugin’s.

Why can’t I find these strings?

By default, WPML doesn’t load these strings. This helps keep the String Translation table clean and manageable.

Admin and settings strings

What’s happening?

Why can’t I find these strings?

Solution

What’s happening?

You want to translate settings, options, or email texts from themes or plugins.

Why can’t I find these strings?

By default, WPML doesn’t load these strings. This helps keep the String Translation table clean and manageable.

Dynamic strings

What’s happening?

Why can’t I find these strings?

Solution

What’s happening?

You want to translate texts with placeholders for elements that change, like names or order numbers, texts displayed on certain conditions, or user-generated texts.

Why can’t I find these strings?

In String Translation, texts that change based on certain conditions might appear with placeholder text, like Hello, %s!” instead of “Hello, John!”. Searching for the exact phrase you see on screen may not return results due to these placeholders.

User profile strings

What’s happening?

Why can’t I find these strings?

Solution

What’s happening?

You want to translate the names or bio info from user profiles.


Why can’t I find these strings?

By default, WPML doesn’t load these strings. This helps keep the String Translation table clean and manageable.

Miscellaneous strings

What’s happening?

Why can’t I find these strings?

Solution

What’s happening?

Translations aren’t synced across all your servers


Why can’t I find these strings?

String Translation only stores MO files on one server. If your site runs on multiple servers, all the requests handled by other servers do not translate the strings.

Not sure about the string type?

See our tips for finding the source of strings.

Updating Theme and Plugin Translations

Many WordPress themes and plugins come with their own translations. To see if yours does, visit the WordPress theme repository and the WordPress plugin repository. Then, go to the page for your theme or plugin and check the translation status in sections labeled Languages (for plugins) or Translations (for themes).

Languages section for WordPress plugins

Translations section for WordPress themes

If you set up languages in WPML after installing a translated theme or plugin, these translations might seem like they are missing on the front-end. 

Here’s how to display them:

  1. From your site’s admin, go to Dashboard → Updates.
  2. Scroll down to the Translations section and click on Update translations.
Updating theme translations 

You can now view the page with the previously missing theme translations on the front-end. You should see the updated translations.

Don’t like the translations provided by your theme or plugin? See how to edit and update the translations.

Temporarily Enabling Auto-Register Strings 

You can temporarily enable auto-register strings if you want to translate:

  • Translatable hard-coded strings, which usually come from the theme or plugins on your site. Themes and plugins can contain a lot of translatable strings. To avoid overwhelming you and the String Translation table, WPML doesn’t auto-load all strings. It also doesn’t auto-scan your theme or plugins every time they get an update. Examples include a “Submit” button or a “Successfully Added to Cart” message.
  • Dynamic strings, which aren’t static in the code and change based on certain conditions or actions. For example, a greeting might display as “Welcome back, John!” on one occasion and “Welcome back, Emily!” on another, even though the underlying code has a placeholder like “Welcome back, %s!”

To translate these types of strings, you first need to go to WPML → String Translation and enable the Auto-register strings feature. 

Important: When you enable the Auto-register strings option, WPML locates untranslated strings on any pages you and other users visit on the front-end. To get the best results, open a separate tab and go to the page with the strings you want to translate. After WPML finds the strings, turn off the feature and refresh the String Translation page. You should see the strings available for translation in the table.

Enabling Auto register strings for translation

Removing Strings from String Translation

If you or your site’s visitors browsed multiple pages with Auto-register strings enabled, you may see lots of new strings loaded into the String Translation table. Many of these may come from the same domain, and you may not want to translate them at all.

If you do not plan to translate any strings coming from a specific domain, you can remove them all at once. To do this, click the Remove strings button. Then, select the domain and click Remove to delete all the strings from that domain from String Translation.

Removing strings by domain

Scanning the Theme or Plugin

You should only scan the theme or plugins on your site for strings if:

Scans load all the strings coming from the theme or plugin into the String Translation table. This includes strings that also appear on your site’s backend. As a result, scanning a theme or plugin may add hundreds or thousands of new strings to String Translation.

When you scan a partially translated theme or plugin, every string appears to require translation in the String Translation table, indicated by a plus icon. Clicking the icon reveals any existing translations, which you can choose to use or overwrite with your own.

To scan a theme or plugin:

  1. Go to WPML → Theme and plugins localization and select the theme or plugin.
  2. Click to scan it.
Scanning a theme for strings

You should now be able to find the strings on the String Translation page.

Translating Strings From Admin and Settings 

You may want to translate texts that you can customize from the admin area of your WordPress site, but that appear on the front-end for your site’s visitors. This includes:

  • Texts from your theme options panel, like footer text, copyright notice, custom messages
  • Labels, messages, or other custom texts set in plugin options and settings
  • Some WordPress core settings, like your time format
  • Some widget titles and content, especially those which have settings in the WordPress admin

Many themes and plugins store these types of texts in the wp_options table. To translate these texts, you first need to register them:

  1. Go to WPML → String Translation.
  2. Scroll to the bottom of the page and click the Translate texts in admin screens link.
The Translate texts in admin screens link at the bottom of the String Translation page
  1. This takes you to a searchable list of admin strings. Select your string and click Add to String Translation. Alternatively, you can click Export as a WPML configuration file to generate a code snippet to use in your language configuration file.
Selecting and adding an admin string to String Translation

You should now see and be able to translate the strings on the String Translation page.

Making User Meta Information Translatable

In WordPress, user profiles have fields for information like name, nickname, biography, and more. Some plugins allow you to display this customizable user information on the front-end, for example by adding an Author box to your posts.  

To translate this user information, you first need to make the types of users translatable:

  1. Go to WPML → String Translation and scroll down to the More options section.
  2. Click edit and choose the user types you would like to make translatable. Then, click Apply.
Enabling the translation of user types
  1. Refresh the String Translation page and use the In domain dropdown menu to search for the Authors domain.
Searching for strings in the Authors domain

The list should now display the names of the fields available for translation. If you still can’t see certain fields, go to Users → Profile and make a small change to the fields by adding a space or word. Once you save your changes, you should see the strings in the String Translation table.

Learn more about translating user metadata

Synchronizing Translation Files for Sites Running on Multiple Servers

By default, String Translation only stores MO files on one server. This means that if your site runs on multiple servers, all the requests handled by other servers do not translate the strings. 

As of WPML 4.4.0, you can enable a custom mode to synchronize your MO files across your servers. To do so, add the following to your wp-config file:

define( 'WPML_ST_SYNC_TRANSLATION_FILES', true );

Please note: This synchronization mode will add another layer of logic that may affect your site’s performance. We recommend using it only if required.

Finding the Source of the Texts You Want to Translate 

Sometimes, you may be unable to find some texts in String Translation because they require a different translation method. For example, you can translate most texts coming from templates or forms using Translation Management

Before trying to register the text for translation in String Translation, try to figure out where it comes from. 

Here’s a quick guide:

Type of textWhere do I translate these texts?
Texts coming from templates (WordPress Site Editor templates, Elementor templates, etc.)Translation Management Dashboard
Field labels and values from Advanced Custom Fields (ACF)When translating the post/page with the assigned fields
WordPress forms and form fields (Contact Form 7, Gravity Forms, etc.)Translation Management Dashboard

If you still can’t translate the text, please contact WPML support. The text you want to translate may be coming from a theme or plugin that requires a specific translation workflow, or isn’t compatible with WPML.
Please also keep in mind that if a theme or plugin is not localized by the author, you will not be able to translate some or all of the texts.