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

See the instructions in the following video, or read the details underneath.

Option 1 – Translating Menus Manually

Go to Appearance->Menus.

Menu with language controls

Menu with language controls

To translate this menu, 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

Translated menu

You can now add pages and categories to the translated menu.

Option 2 – Automatic Menu Sync by WPML

The menu sync tool aims to keep your menus in different languages synchronized. It does so by adding or removing items from the translated menus. This way, any manual edits that you do on the translated menus are kept through the sync process.

To use WPML’s menu sync, go to WPML ->WP Menu Sync.

WPML will show you what it’s going to do. You’ll see which entries will be added or removed from the translated menus. Click on the Sync button to perform the selected operations. Anything you add manually to the translated menus will be preserved throughout WPML sync operation.

Translate Custom Links

If you do not install 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 take its advantage by following these steps:

  • After syncing menus, go to the WPML -> WP Menu Sync page again.
  • Find the link at the bottom to translate these custom menu links and labels on the WPML -> String Translation page.
  • Go to the WPML -> WP Menu Sync page and run Sync one more time to update translated menu links and labels.

1. The menu sync tool shows you what needs update

1. The menu sync tool shows you what needs update

2. Review the changes, select what to apply and start

2. Review the changes, select what to apply and start

3. Review the sync results and note Link entries that require String Translation

3. Review the sync results and note Custom Link entries that require String Translation

4. Translate strings for Custom Link menu items

4. Translate strings for Custom Link menu items

5. Run the menu sync again to rename the link items, using the translated strings

5. Run the menu sync again to rename the link items, using the translated strings

6. Your translated menu appears

6. Your translated menu appears

Displaying the Translated Menus

In the theme, you can specify the menu in the default language. WPML automatically hooks to the menu system and will display the correct menu in the current language.