WordPress.org

Plugin Directory

WP Multilang – плагін для перекладу та багатомовності

WP Multilang – плагін для перекладу та багатомовності

Опис

WP Multilang це плаґін багатомовності для WordPress.

Доступний переклад записів довільних типів, елементів таксономій текстових полів, мільтімедіа файлів, меню, заголовків та текстів віджетів.

Home | Help & Tech Support | Documentation | Premium Features

New Features of the plugin WP Multilang

Особливості плаґіна 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.

Для цього є два шляхи:

  1. In json.
    Create in root of a theme or a plugin file wpm-config.json with:
    {
    “post_types”: {
    “post”: null
    }
    }

  2. 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

  1. Перед встановленням/видаленням, зробіть резервну копію бази даних.
  2. Деактивуйте qTranslate-X.
  3. Встановіть та активуйте WP Multilang.
  4. Створіть у корені вашої теми файл ‘wpm-config.json’.
  5. Додайте потрібні типи записів, таксономії, опції, поля до ‘wpm-config.json’. Налаштування з qTranslate-X не імпортуються.
  6. Імпортуйте назви термінів з qTranslate.
  7. Перевірте чи все добре.
  8. Якщо все добре, видаліть 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.

Встановлення

  1. Завантажте файли плаґіну у теку /wp-content/plugins/wp-multilang або встановіть плаґін через встановлення плаґінів у WordPress
  2. Активуйте плагін на сторінці ‘Плагіни’ в WordPress.
  3. Налаштуйте мови на сторінці налаштувань WP Multilang.

Часті питання

Я додав новий переклад, але він перезаписався іншим.

Якщо у вас відкрито кілька вкладок бравзера, з редагуванням запису і ви перемкнулися на іншу мову на одній із них, то запис збережеться з тією мовою, що ви ввімкнули останньою.

Відгуки

27.08.2024 1 reply
Impossible to have home page in language version. Functional pages take the name in different language, then it gets erased snd page continues in language version but without the title. After 2 days of desperation, I purchased Polylang for Woocommerce. Maybe good for simple posts, but not functional when you want to do money from ecommerce.
18.08.2024
Got really fast responses from the support team when I had a problem with the plugin, and was able to have my support request closed very quickly. They were very friendly and knowledgeable. Plugin is a great tool, and very user friendly, with my limited experience with wordpress I was able to find everything easily. Thanks a lot for the great service!
10.07.2024
Thank you very much to your team for timely and high-quality service and good communication. I recommend it to everyone! Thank you.
23.05.2024
Pour l’instant, pour moi, cela fonctionne. Merci de votre temps pour avoir créé ce plugin !
22.05.2024 1 reply
For 3 days I have been trying to remove this plugin, which only causes annoyance and has left me countless empty pages without titles, even with the help of the support team. This is already damaging to my business as I can’t rollout according to the schedule, which means we have to bear daily costs and can’t generate any revenue. For each day the purchase price of the module should be introduced as a penalty or simply banned from Wordpress.org.
Прочитати всі 93 відгуки

Учасники та розробники

“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.