WPML lets you translate WordPress menus and create different menus per language. You can translate menus manually, or have WPML synchronize menu content.
Option 1 – Translating Menus Manually
Go to Appearance->Menus.
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.
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.
If you’ve manually added ‘links’ (custom items) to the menu, you will need to translate their texts in WPML’s String Translation menu. This allows the menu sync tool to recreate your ‘link’ menu entries in the translated menus. Anything you add manually to the translated menus will be preserved throughout WPML sync operation.
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.