The plugin developer kindly provides this tutorial. This is a complex but very well-documented plugin. Due to the huge size of the documentation, this is a general guide that links to the relevant information. Please check this link for more detailed documentation: https://wpml.org/documentation/
WPML consists of several modules. The basic module turns WordPress sites multilingual. Other modules help with an enhanced translation process, string translation, media translation and other functions.
You can learn about the different modules in the WPML Core and Addons page.
- Languages – Determine the site’s languages and control how different language contents are organized.
- Theme and plugins localization – Choose between the traditional .mo files or using WPML’s String Translation.
- Navigation – Control the appearance of site-wide navigation based on WordPress pages.
- Sticky links – This is an essential function for running full websites with WordPress. It guarantees that links between pages can never break.
Translating Site Content
WPML creates different posts, pages and custom types for translations and connects them together. This means that every page has its own title, body and meta-fields.
WPML offers two ways for translating content:
- Manually, by clicking on the + icons
- Using WPML’s Translation Management module
Most WordPress sites contain texts outside of posts. WPML translates these texts using the String Translation module.
To display image galleries in translated content, you should use WPML Media. It will allow you to connect the same media files to content in different languages.
Once you’ve translated the site’s content and general strings, you might be interested in translating the site’s navigation and using localized permalinks.
Learn more about:
- Translating widgets
- Translating menus – create different menus for each language
- Translating page slugs – translate the entire URLs of custom post types
WPML missing translated outputs
If some strings appear in translations, but the output is still the original string, not the translated one and you've activated a child theme, please check if you have a wpml-config.xml file in both original and child theme folders. Next delete the one in child theme and it'll resolve the issue.