
內容簡介
WP Multilang 是 WordPress 的多語言外掛。
翻譯文章類型、分類法、元字段、選項、多媒體檔案中的文本字段、選單、標題和小工具中的文本字段。
WP Multilang 外掛的特點
100%免費。
在 PHP 上進行翻譯。
相容於 REST。
支援配置以翻譯選項、元字段、文章內容中的多維數組。
支援多站台。
支援 WordPress 子文件夾。
每種語言可單獨設置選單項目、文章、術語、小工具和評論。
為動態應用翻譯設定提供許多過濾器。
無重複文章、術語、選單、小工具。
無每種語言版本都需子域。
無需透過額外的資料庫表格。
可使用一個位置來設置多種語言。例如,區域化。
可設置自訂位置以用於 HTML(如果安裝位置為en_US,則可以設置位置,例如:en、en-UK、en-AU等,而無需安裝其他位置)
有會員權限 manage_options 的任何使用者都能夠新增新語言。
提供「翻譯者」角色以編輯文章、術語。但無法發布或刪除。
無語言或能力限制。
WP Multilang 可相容的外掛
ACF、ACF Pro
WooCommerce
WooCommerce Customizer
Gutenberg
Yoast SEO
Contact Form 7(添加用於發送用戶語言的郵件標籤 [_language])
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(在主題中重新定義鏈接模板並翻譯鏈接文本)
Better Search
Rank Math SEO(感謝 @pratikmts)
透過 JSON 進行翻譯設定管理。
在您的主題或外掛根目錄中添加 wpm-config.json 檔案。
設置檔案的範例配置可在插件主目錄下的“configs”文件夾中查看。
配置將在切換主題、啟用或更新任何外掛後進行更新。
外掛具有動態應用配置以進行翻譯的過濾器。
要關閉翻譯,請將所需配置設置為 null。
例如,您必須關閉對文章類型 post 的翻譯。
有兩種方法:
在 JSON 中。
在主題或外掛的根目錄中創建 wpm-config.json 檔案:
{
“post_types”:{
“post”:null
}
}
透過篩選器。
在 functions.php 中新增:
add_filter(‘wpm_post_post_config’, ‘__return_null’);
要啟用翻譯,請在 php 中傳遞一個空陣列 array() 或在 JSON 中使用空對象 {}。
支援翻譯多維數組的選項、元字段和文章內容。
當移除該外掛時,支援清空翻譯的資料庫。
外掛標籤
開發者團隊
② 後台搜尋「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
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
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.
