Polylang
With Polylang fully integrated to WordPress and using only its built-in core features (taxonomies), keep steady performances on your site and create a multilingual site featuring from just one extra language to 10 or more depending on your needs. There is no limit in the number of languages added and WordPress’ language packs are automatically downloaded when ready. Features Depending on the type of site you have built or are planning to build, a combination of plugins from the list below might be of interest. All plugins include a wizard allowing to setup them in just a few clicks. Polylang Polylang and Polylang Pro share the same core providing features such as: Translating posts, pages, media, categories, post tags, custom post types and taxonomies, RSS feeds; RTL scripts are supported. The language is either set by the language code in URL, or you can use a different sub-domain or domain per language. Automatic copy of categories, post tags and other metas when creating a new post or page translation. Translating classic menus and classic widgets. Also accessible with Site Editor Classic Features in block themes. Customizable language switchers available as blocks, classic widget or classic navigation menu item. Compatibility with Yoast SEO. Polylang Pro Helps optimizing the time spent translating your site with some very useful extra features such as: Better integration in the new Block Editor. Language options available in the widget block editor. Template parts translatable in the site editor (FSE). Duplicate and/or synchronize content across post translations. Improved compatibility with other plugins such as ACF Pro. Share the same URL slug for posts or terms across languages. Translate URL slugs for categories, author bases, custom post types and more… Machine translation with DeepL. Export and import of content in XLIFF format for outsourced professional translation. Access to a Premium Support for personalized assistance. Polylang for WooCommerce Add-on for the compatibility with WooCommerce which provides features such as: Translating WooCommerce pages (shop, check-out, cart, my account), product categories and global attribute terms directly in the WooCommerce interface. Translating WooCommerce e-mails and sending them to customers in their language. Products metadata synchronization. Compatibility with the native WooCommerce CSV import & export tool. Compatibility with popular plugins such as WooCommerce Subscriptions, Product Bundles, WooCommerce Bookings, Shipment Tracking and more. Ability to use the WooCommerce REST API (available with Polylang Pro). Access to a Premium Support for personalized assistance. Switching from WPML? WPML to Polylang allows migrating from WPML to Polylang in a few clicks. Credits Thanks a lot to all translators who help translating Polylang. Thanks a lot to Alex Lopez for the design of the logo. Most of the flags included with Polylang are coming from famfamfam and are public domain. Wherever third party code has been used, credit has been given in the code’s comments.
Top keywords
- polylang11×2.35%
- woocommerce9×1.92%
- language8×1.71%
- post6×1.28%
- site6×1.28%
- translating6×1.28%
- classic5×1.07%
- compatibility5×1.07%
- categories4×0.85%
- editor4×0.85%
- pro4×0.85%
- available3×0.64%
WP Multilang – Translation and Multilingual Plugin
WP Multilang is a multilingual plugin for WordPress. Translations of post types, taxonomies, meta fields, options, text fields in miltimedia files, menus, titles and text fields in widgets. Home | Help & Tech Support | Documentation | Premium Features New Features of the plugin WP Multilang Support full site editor for block based themes Support block based widgets Support different feature image for each language Support Smart Custom Fields Plugin Auto Translation ( available in premium version ) – View Tutorial Support URL Slug Translation ( available in premium version ) – View Tutorial Support Base Translation ( available in premium version ) – View Tutorial Export and import content in XLIFF or xml format to translate outside Activate Multilingual Support for Post Types Support Auto URL Slug Translation ( available in premium version ) – View Tutorial Features of the plugin WP Multilang 100% free. Translation at PHP. Compatible with REST. Support configuration for translate multidimensional arrays in options, meta fields, post content. Support multisite. Support WordPress in sub-folder. Separate menu items, posts, terms, widgets, comments per language. Many filters for dynamic applying translation settings. No duplicate posts, terms, menus, widgets. No sub-domain for each language version. No additional tables in database. Possibility set many languages with one localization. For example, for localization in the region. Possibility to set custom locale for html(If installed locale is en_US, you can set locale like: en, en-UK, en-AU etc. Without installation another localization) Possibility for add new languages for any user with capability manage_options. Exist the role “Translator” for editing posts, terms. It can not publish or delete. No limits by languages or by possibilities. WP Multilang compatible with plugins Elementor ( available in premium version ) – View Tutorial Divi Builder ( available in premium version ) – View Tutorial Bricks Builder ( available in premium version ) – View Tutorial ACF, ACF Pro WooCommerce WooCommerce Customizer Gutenberg Yoast Seo SEOPress Contact Form 7 (added mail tag [_language] for send user language in mail) WPBakery Visual Composer Page Builder by SiteOrigin NextGEN Gallery All in One SEO Pack MailChimp for WordPress Newsletter Maps Builder Max Mega Menu MasterSlider WP-PageNavi BuddyPress Meta Slider TablePress Download Monitor (Redefine templates for links in your theme and translate link texts) Better Search Rank Math SEO (thanks for @pratikmts) WPGraphQL (Add lang to the query parameters in URL. Eg: lang=en) Smart Custom Fields Team – Team Members Showcase Plugin Schema & Structured Data for WP & AMP Forminator Forms Gravity Forms Ultimate Member Form Oxygen Builder ( available in premium version ) Internal Link Juicer Strong Testimonials Fluent Forms Advance Woocommerce Support Send emails in customer’s selected language REST API Support Import and export products in customer’s selected language Translate products (simple products, variable products, grouped products), categories, tags, global attributes Cart synchronization across multiple languages Manage translation settings via json. Add in the root of your theme or plugin file wpm-config.json. Sample configurations can be viewed in config files in folder ‘configs’ in root the plugin. Configuration is updated after switching theme, enable or update any plugins. The plugin has filters for dynamic application configuration for translate. For turn off translation, set null into the desired configuration. For example, you must turn off translation for a post type post. There are two ways: In json. Create in root of a theme or a plugin file wpm-config.json with: { “post_types”: { “post”: null } } Through the filter. Add in functions.php add_filter( ‘wpm_post_post_config’, ‘__return_null’ ); To enable translation pass an empty array in php array() or empty object in json {}. Supports translation multidimensional array of options, meta fields and post_content. Supports the removal of established localizations. Supports translation via GET parameter. Add in the GET parameter lang code desired language. Supports clean database of translations when removing the plugin. Translations are only removed from the built-in tables. Supports import term translations from qTranslate(by Soft79). Supports automatically redirect to the user’s browser language, if he visits for the first time. Ideal for developers. For display language switcher in any place add the code to your template if ( function_exists ( 'wpm_language_switcher' ) ) wpm_language_switcher (); Function accepts two parameters: $type – ‘list’, ‘dropdown’, ‘select’. Default – ‘list’. $show – ‘flag’, ‘name’, ‘both’. Default – ‘both’. Or using the shortcode wpm_lang_switcher. It accept two not necessary parameters ‘type’ and ‘show’. Available features for translation: wpm_translate_url( $url, $language = ” ); – translate url wpm_translate_string( $string, $language = ” ); – translate multilingual string wpm_translate_value( $value, $language = ” ); – translate multidimensional array with multilingual strings Update translation occurs at PHP. Therefore plugin has high adaptability, compatibility and easily integrates with other plugins. This is what distinguishes it among similar. Available translation html tags by JS for strings what do not have WP filters before output. Add your tags in config: "admin_html_tags": { "admin_screen_id": { "attribute": [ "selector" ] } } Where: admin_screen_id – admin screen id. attribute – attribute what need to translate. Available ‘text’ – for translate text node, ‘value’ – for translate form values. Or other tag attribute, like ‘title’, ‘alt’. selector – css selector for search needed tag. Each selector is a new array item. If You need to add translation for multidimentional array for repeated elements You can use custom tag ‘wpm_each’ for set config to each element in array. Example, add config for each item ‘title’ in custom post field array: "post_fields": { "custom_field": { "wpm_each": { "title": {} } } } For set translation uses the syntax: [:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:] Added shortcode for translate text in any place: [wpm_translate][:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:][wpm_translate] If You translate text in established language, add lang parameter: [wpm_translate lang=”de”][:en]Donec vitae orci sed dolor[:de]Cras risus ipsum faucibus ut[:][wpm_translate] Support translating from syntax qTranslate, qTranslate-X, WPGlobus etc. Compatible with REST-API. Support transfer the required translation through option lang in the GET request to REST. Has the ability to keep recording the target language through the transmission parameter lang in the request. Migration from qTranslate-X Before installing/uninstalling, make database backup. Deactivate qTranslate-X. Install and activate WP Multilang. Create in root of your theme file ‘wpm-config.json’. Add all needed post types, taxonomies, options, fields to ‘wpm-config.json’. Setting from qTranslate-X not importing. Import term names from qTranslate. Check that everything is okay. If everything is okay, remove qTranslate-X. If not, make screenshots of errors, restore database from backup and add support issue with your screenshots and description of errors. Warning Not compatible with: – WP Maintenance Known issues Function ‘get_page_by_title’ not working, because in title field are stored titles for all languages. Use function ‘wpm_get_page_by_title( $title )’ as solution. NOTE: Because plugins have different ways of storing data, WP Multilang is not compatible with every single plugin out-of-the-box (mostly page builders). This may result in texts not being translatable or translations not being saved. Most of these issues can be resolved using the integration options (wpm-config.json or filters) of WP Multilang. Please try WP Multilang in a test-environment before activating it on an existing production site and always make a backup before activating! Home | Help & Tech Support | Documentation | Premium Support We try our best to provide support on WordPress.org forums. However, We have a special community support where you can ask us questions and get help about your WP Multilang related questions. Delivering a good user experience means a lot to us and so we try our best to reply each and every question that gets asked. Bug Reports Bug reports for WP Multilang are welcomed on GitHub. Please note GitHub is not a support forum, and issues that aren’t properly qualified as bugs will be closed.