Опис
WP Multilang це плаґін багатомовності для WordPress.
Доступний переклад записів довільних типів, елементів таксономій текстових полів, мільтімедіа файлів, меню, заголовків та текстів віджетів.
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
- 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
Особливості плаґіна WP Multilang:
- 100% безкоштовно
- Переклад на рівні PHP.
- Сумісність з REST.
- Підтримує налаштування для перекладу багатомірних масивів у опціях, мета полях, змісту записів.
- Підтримка багатосайтовості
- Пітдтримка роботи WordPress з підпапки
- Розділення пунктів меню, записів, термінів, віджетів, коментарів за мовою.
- Багато фільтрів для динамічного застосування конфігурації перекладу.
- Без дублів записів, термінів, меню, віджетів.
- Без субдоменів для мовних версій
- Без додаткових таблиць у базі.
- Можливість встановити багато мов з одним пакетом локалізації. Наприклад, для локалі регіону.
- Можливість встановити довільну локаль для html(Якщо встановлений мовний пакет en_US, ви можете встановити локалі: en, en-UK, en-AU тощо. Без встановлення окремої локалізації.).
- Можливість додавати нові мови для будь-якого користувача з правами
manage options
- Є роль користувача “Перекладач” для редагування записів та елементів таксономій. Він не може публікувати чи видаляти.
- Без обмежень за мовою чи можливостями.
WP Multilang сумісний з коробки з плаґінами:
- Elementor ( available in premium version ) – View Tutorial
- Divi Builder ( available in premium version ) – View Tutorial
- 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
- E-mail розсилка
- Maps Builder
- Max Mega Menu
- MasterSlider
- WP-PageNavi
- BuddyPress
- Meta Slider
- TablePress
- Download Monitor (Перевизначте шаблон для ланок у вашій темі та перекладіть тексти ланок)
- Better Search
- Rank Math SEO (дякуємо за @pratikmts)
- WPGraphQL (Add lang to the query parameters in URL. Eg: lang=en)
Керування налаштуваннями перекладу через json.
Додайте у корінь своєї теми або плаґіна файл wpm-config.json
з налаштуваннями.
Приклади конфігурацій ви можете подивитися у теці ‘configs’ у корені плаґіну.
Конфігурація оновлюється після перемикання теми, вимкнення/увімкнення/оновлення будь-якого плаґіна.
Має фільтри для динамічного застосування конфігурації перекладу.
Для вимкнення перекладу передайте null
у потрібну конфігурацію.
Наприклад, потрібно вимкнути переклад для типу запису post
.
Для цього є два шляхи:
-
In json.
Create in root of a theme or a plugin filewpm-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.
Ідеально підходить для розробників.
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
Оновлення перекладів відбувається на рівні PHP. Тому плаґін має високу адаптивність, сумісність та легко інтегрується з іншими плаґінами. Саме це вирізняє його серед подібних.
Доступний переклад html теґів через JS для рядків, що не мають фільтрів WP перед виводом.
Додайте ваші теґи у конфіґ:
"admin_html_tags": {
"admin_screen_id": {
"attribute": [
"selector"
]
}
}
Де:
admin_screen_id – id екрану адміністратора.
attribute – атрибут, що потрібно перекласти. Доступно text
– для перекладу текстових вузлів, value
– для перекладу значень форм. Або інший атрибут теґу, типу title
, alt
.
selector – css селектор для пошуку потрібного елементу. Кожен селектор це новий елемент масиву.
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.
Міграція з qTranslate-X
- Перед встановленням/видаленням, зробіть резервну копію бази даних.
- Деактивуйте qTranslate-X.
- Встановіть та активуйте WP Multilang.
- Створіть у корені вашої теми файл ‘wpm-config.json’.
- Додайте потрібні типи записів, таксономії, опції, поля до ‘wpm-config.json’. Налаштування з qTranslate-X не імпортуються.
- Імпортуйте назви термінів з qTranslate.
- Перевірте чи все добре.
- Якщо все добре, видаліть qTranslate-X. Якщо ні, зробіть зняток екрану помилки, відновіть базу з резервної копії та додайте нове питання на форум підтримки зі знятком та описом ваших помилок.
Увага
Не підтримує різні ланки для різних мов (поки що).
Не сумісний з:
– WP Maintenance
Відомі проблеми
Функція ‘get_page_by_title’ не працює, оскільки у полі заголовку зберігаються заголовки для всіх мов. Використовуйте функцію ‘wpm_get_page_by_title( $title )’ як рішення.
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.
Скріншоти
Блоки
Цей плагін надає 1 блок.
- Language Switcher Example block scaffolded with Create Block tool.
Встановлення
- Завантажте файли плаґіну у теку
/wp-content/plugins/wp-multilang
або встановіть плаґін через встановлення плаґінів у WordPress - Активуйте плагін на сторінці ‘Плагіни’ в WordPress.
- Налаштуйте мови на сторінці налаштувань WP Multilang.
Часті питання
-
Я додав новий переклад, але він перезаписався іншим.
-
Якщо у вас відкрито кілька вкладок бравзера, з редагуванням запису і ви перемкнулися на іншу мову на одній із них, то запис збережеться з тією мовою, що ви ввімкнули останньою.
Відгуки
Учасники та розробники
“WP Multilang – плагін для перекладу та багатомовності” — проект з відкритим вихідним кодом. В розвиток плагіну внесли свій вклад наступні учасники:
Учасники“WP Multilang – плагін для перекладу та багатомовності” було перекладено на 8 локалізацій. Дякуємо перекладачам за їх роботу.
Перекладіть “WP Multilang – плагін для перекладу та багатомовності” на вашу мову.
Цікавитесь розробкою?
Перегляньте код, перегляньте сховище SVN або підпишіться на журнал розробки за допомогою RSS.
Журнал змін
2.4.13
- feature WP GraphQL support #44
- fixed Post Title translation issue for multiple languages #78
- enhancement Language switcher disappears too early in WordPress 6.6 #91
- enhancement Code improvement #96
- fixed Out of memory error after update to 2.4.11 #111
- fixed Issue with yoast meta description #113
- fixed License key wrong link issue #118
- fixed Error after the update 2.4.11 #109
2.4.12
- feature URL Slug Translation #25
- fixed PHP waring #102
- fixed Yoast meta description translation issue #113
2.4.11
- fixed Product attributers are not getting translated in frontend #94
- enhancement Code improvement #96
- fixed Warning: Undefined array key #102
- feature Automatic translation #77
2.4.10
- feature Added compatibility with Divi #72
- fixed issue with canonical and href URL as per the language. #85
- fixed issue with Language switcher block in site editor #86
- fixed Compatibility with WordPress 6.6 and updated readme.txt
2.4.9
- feature WordPress full site editing support #46
- fixed Conflicts with the Newsletter plugin #61
- enhancement Changed premium tab to Premium Features in readme.txt #80
- feature Added Language Switcher Gutenberg Block #82
2.4.8
- fixed admin_html_tags leaving empty fields #41
- feature Gutenberg view post should redirect to current language post #55
- fixed Conflicts with the Newsletter plugin #61
- feature Woocommerce product attributes translation issue #70
- fixed Issue with CF7 form #73
- fixed Language switch button interface Guternberg block button #74
2.4.7
- виправлено виклик невизначеної функції #65
- feature Admin settings page UI/UX changes #67
- feature Added Newsletter Form #68
2.4.6
- enhancement Updated website links like contact page and other info in plugin and wp.org #45
- feature Adedd feedback popup on deactivation #54
- feature Added compatibility with Elementor (Premium)
2.4.5
- feature Different product or post images for each language #20
- fixed Widget block translate issue #29
- fixed Fatal Error with latest Yoast SEO plugin update #30
- fixed Translation of special mail tags for Contact Form 7 #31
- fixed Translation of the “title” attribute in the shortcode of Contact Form 7 #32
- fixed wpseo_og:locale:alternate to be set properly #33
- fixed Translate escaping text #34
- fixed Rank Math custom fields getting duplicated on the translated posts #35
- fixed Issue with language switcher regex for gutenberg #36
2.4.4
- fixed issue with ACF PRO #12
- fixed An error occurred when deleting a post #13
- fixed E_ERROR in class-wpm-install.php #16
- fixed Issue with Gutenberg reusable blocks and create pattern #17
- fixed No translation for Title, Meta etc. if using AIOSEO plugin #18
- fixed No Translation of URL, and social meta tags using YOAST plugin in #23
- fixed Issue with the Rank Math Seo meta field #24
2.4.3
- fixed Conflict with Yoast SEO #6
- enhancement ( ! ) Deprecated: Hook wpseo_opengraph is deprecated since version WPSEO 14.0 with no alternative available #7
- enhancement ( ! ) Deprecated: setcookie(): Passing null to parameter #5 ($domain) of type string is deprecated #8
- fixed Issue with the ACF Pro plugin #10
2.4.2
- fixed Compatibility with WordPress 6.4 and updated readme.txt #1
- fixed Code Improvement #2
- added support tab and form
2.4.1
- removed support old version of ACF lower 5.0
All changelog available on GitHub.