Skip Navigation
Updated
March 1, 2023

WPML lets you translate WordPress menus and create different menus per language. You can translate menus automatically, manually, or have WPML synchronize menu content.

For all of the following options, your secondary language menu will only display translated items. This is the case even if the post types used in the menu are set as Translatable – use translation if available or fallback to default language.

Option 1 – Translating Menus Automatically

WPML offers a translation mode called Translate Everything Automatically. This mode translates all your content automatically when it is set as Translatable – only show translated items and the Translate Automatically toggle is set to Yes.

Post types set to Translatable – only show translated items

If your menu item belongs to a post type with this setting, it will display on the front-end as translated without having to translate your menu.

Please note: if you have Translate Everything Automatically mode set to Review the translations before publishing, you must approve the translations of the page or post for the translated menu to display on the site’s front-end.

Option 2 – Translating Menus Manually

If you want to create a completely different menu in your secondary languages, or you opt for the Translate What You Choose translation mode, you need to translate your menus manually.

To translate your menu, go to AppearanceMenus.

Menu with language controls

Click on the + icons next to the other languages. Now, you’re creating a new menu, which will be linked as the translation of this menu.

Translated menu

Add your translated pages and categories to the translated menu as you would the default language menu.

Option 3 – Automatic Menus Sync by WPML

The menu sync tool aims to keep your menus in different languages synchronized. It does this by adding, removing, and updating items from the translated menus to match the default language menu.

To use WPML’s menu sync, go to WPML → WP Menus Sync. WPML will show you the changes it plans to make.

The menu sync tool shows you what needs updating

You’ll see which entries will be added or removed from the translated menus. Click on the Sync button to perform the selected operations.

Review the changes, select what to apply and click Apply Changes

Anything you add manually to the translated menus will be preserved throughout WPML sync operation.

If you do not have the WPML String Translation add-on, you can manually edit custom links and their labels in the translated menus.

If you have the WPML String Translation add-on active, you can use it to translate your menu items by following these steps:

  1. Go to the WPMLWP Menus Sync page and press Sync to add custom links to other languages.
  2. After the synchronization is done, visit WPMLWP Menus Sync one more time and click the Main menu link.
Translating a custom link in a menu
  1. On the String Translation page, click the + icon to translate the menu item and the link.
Translate the menu item and the link
Translate the menu item and the link
  1. Go to the WPMLWP Menus Sync page and click Sync one more time to update the translated menu links and labels.
Custom link on the translated version of the page