Learn how to translate any WordPress widget with WPML, including block-based, legacy, and custom built.
Required Plugins
To translate widgets, install and activate:
- WPML
- WPML String Translation
How to Translate Widgets
WPML can translate any type of widget. This includes:

Widgets added to posts
and pages

Classic block-based
widgets

Legacy widgets

Custom widgets
Translate Widgets Added to Individual Posts and Pages
To translate widget blocks that you can insert inside any content, including posts and pages:
- Go to WPML → Translations.
- Select the content (posts, pages, etc.) containing your widget.
- Choose a translation method and translate.
WPML translates your widget along with the rest of the page contents.
Translate Classic Block-Based Widgets
To translate classic, block-based widgets that you add to widget areas using the Appearance → Widgets page:
- Go to WPML → Translations.
- On the Dashboard tab, scroll down to the Block section and expand it. The section appears once a widget area holds block-based widgets.
- Select the widget area containing your widgets (e.g., “Widgets – Blog Sidebar”).
- Choose a translation method and translate.
Translate Legacy Widgets
To translate the old legacy widgets that are not block-based:
- Go to WPML → Translations.
- Scroll down to the Other texts (Strings) section and select your widget texts.

- Choose a translation method and Translate.
If you can’t find your widget texts on the Dashboard tab:
- Go to WPML → Translations and open the Strings tab.
- In the Utilities panel at the bottom of the page, find Not seeing strings that you are looking for? and click Admin Texts Translation.

- Select the widget texts you want to translate and click Add to String Translation.
You can now translate these widget texts on the Dashboard tab.
Translate Custom Widgets
To translate widgets you developed yourself, you first need to register them in WPML. Once registered, you can translate your widgets from the Other texts (Strings) section on the Dashboard tab.
Display Different Widgets in Each Language
To display different widgets in each language:
- Go to Appearance → Widgets.
- Click the widget you want to limit, then open its Display on language panel in the block settings sidebar.
- Choose the language you want to display the widget in.



