Налаштування плагіна WPML для мультимовності WordPress

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.
Розробка та обслуговування будь-яких видів сайтів:
Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування плагіна WPML для мультимовності WordPress
Середня
~2-3 робочих дні
Часті питання
Наші компетенції:
Етапи розробки
Останні роботи
  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування плагіна WPML для багатомовної WordPress

WPML (WordPress Multilingual Plugin) — платний плагін для створення багатомовних сайтів WordPress. Використовується на сотнях тисяч сайтів і є де-факто стандартом для серйозних багатомовних проектів з підтримкою WooCommerce.

Компоненти WPML

WPML складається з кількох плагінів, які встановлюються окремо:

  • WPML Multilingual CMS — ядро, без якого нічого не працює
  • WPML String Translation — переклад рядків теми, плагінів, віджетів
  • WPML Translation Management — робочі процеси перекладу з призначенням перекладачів
  • WPML Media Translation — окремі зображення для різних мов
  • WooCommerce Multilingual — підтримка товарів, атрибутів, варіацій, кошика

Мінімальний набір: CMS + String Translation. Для інтернет-магазину додайте WooCommerce Multilingual.

Мовна структура URL

WPML підтримує три варіанти:

1. Різні піддомени:    ru.example.com / en.example.com
2. Підпапки:          example.com/ru/ / example.com/en/
3. Різні домени:      example.ru / example.com

Підпапки — найпоширеніший варіант. Налаштовується у WPML → Languages → Language URL format.

Створення перекладів контенту

Переклади створюються двома способами:

Вручну: у редакторі посту з'являється блок «Translation» з кнопками для кожної мови. Натиснувши «+» або олівець, відкривається редактор перекладу з оригіналом та перекладом поруч.

Через Translation Management: пости відправляються до черги перекладів, призначаються перекладачам (локальним або через WPML Translation Services), повертаються з перекладами.

Переклад рядків теми та плагінів

WPML → Theme and Plugins Localization
→ Виберіть тему → Scan for strings

Після сканування всі рядки з'являються у String Translation для ручного перекладу або завантаження через файли .po/.mo.

Рядки з вставкою JavaScript через wp_localize_script скануються автоматично, починаючи з WPML 4.5.

Налаштування WooCommerce

Після установки WooCommerce Multilingual:

  1. WPML → WooCommerce Multilingual → Products — перекладати кожен товар окремо або синхронізувати поля
  2. Currencies — можна встановити різні валюти для різних мов (EUR для німецької, GBP для англійської)
  3. Shipping — способи доставки перекладаються окремо

Таблиця відповідностей перекладів: wpml_translations зберігає trid (translation group id), language_code, element_id (post_id), element_type (post/post_type).

Програмний доступ до перекладів

// Отримати ID перевода посту на конкретну мову
$translated_id = apply_filters( 'wpml_object_id', $original_post_id, 'post', true, 'en' );

// Отримати поточну мову
$current_language = apply_filters( 'wpml_current_language', null );

// Перемикнути мову програмно
do_action( 'wpml_switch_language', 'de' );
$german_posts = get_posts( [...] );
do_action( 'wpml_switch_language', null ); // відновити

Синхронізація полів

У WPML → Settings → Custom Fields Translation задається, що відбувається з користувацькими полями посту при перекладі:

  • Copy — скопіювати значення до перекладу (для числових полів, дат)
  • Copy once — скопіювати лише при першоначальному створенні перекладу
  • Translate — поле перекладається незалежно
  • Ignore — не копіювати

Поля ACF визначаються автоматично через інтеграцію з ACF.

Типові проблеми

Дублювання контенту в пошуку — якщо карта сайту генерується Yoast без урахування мов. Рішення: увімкнути підтримку WPML у Yoast у Yoast SEO → Integrations або використовувати WPML XML Sitemap.

Порожні переклади у REST API — при запиті до /wp-json/wp/v2/posts повертаються лише пости поточної мови. Для явного вказання мови: додайте параметр ?lang=en до запиту (WPML додає цей параметр).

Повільний сайт — WPML додає JOIN до кожного WP_Query. На великих базах (10k+ постів, 3+ мов) це помітно. Рішення: індекси на wpml_translations.trid, кеш об'єктів (Redis/Memcached).

Тимчасові рамки

Установка та налаштування мов, переклад існуючого контенту до 50 сторінок — 2–3 робочі дні. Магазин WooCommerce, користувацькі типи записів, налаштування Translation Management з перекладачами — 4–6 днів.