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

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

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

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування плагіна Polylang для мультимовності 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

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

Polylang — безплатна альтернатива WPML для створення багатомовних WordPress-сайтів. Безплатна версія охоплює більшість завдань; платний Polylang Pro додає синхронізацію полів, REST API та підтримку WooCommerce.

Принцип роботи

Polylang не створює окремих сайтів у мережі (як Multisite) — він додає мови як таксономію до існуючих постів, сторінок та користувацьких типів. Кожен пост прив'язується до мови, а переклади пов'язуються один з одним через метадані.

Установка та первинне налаштування

Плагін встановлюється з репозиторію WordPress безплатно. Після активації:

  1. Languages → Languages → Add language — виберіть зі списку (російська, англійська тощо)
  2. Polylang автоматично створює мовний URL: підпапки (/ru/, /en/) або піддомени
  3. Languages → Settings — встановіть мову за замовчуванням, поведінку головної сторінки

Структура URL змінюється у Languages → Settings → URL modifications. Варіант «Directories» (/en/page/) рекомендується для SEO.

Переклад контенту

У списку постів з'являються прапорці мов — значок олівця відкриває існуючий переклад, «+» створює новий. У редакторі збоку (або у Gutenberg через панель) — блок Polylang для вибору мови посту та посилання перекладів інших мов.

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

Languages → String Translations
→ Виберіть групу (тема, плагін або користувацька)
→ Введіть переклади для кожної мови

Для реєстрації рядка у PHP:

// Реєстрація рядка при ініціалізації
pll_register_string( 'my-plugin', 'Submit button text', 'my-plugin-strings' );

// Отримання перекладеного рядка в шаблоні
echo pll__( 'Submit button text' );

// Або через e-функцію для виводу
pll_e( 'Submit button text' );

Переклад меню

Polylang дозволяє призначити окреме меню для кожної мови:

Appearance → Menus
→ Створіть меню «Main Menu RU», прив'яжіть до мови «Russian»
→ Створіть меню «Main Menu EN», прив'яжіть до мови «English»
→ Призначте обидва меню одній локації меню теми

Polylang автоматично показує правильне меню залежно від поточної мови.

Програмний API

// Поточна мова
$lang = pll_current_language(); // 'ru', 'en', 'de'

// Мова конкретного посту
$post_lang = pll_get_post_language( $post_id ); // 'ru'

// Отримати ID перекладу посту
$translated_post_id = pll_get_post( $original_post_id, 'en' );

// Домашня сторінка для конкретної мови
$home_en = pll_home_url( 'en' );

// Всі мови сайту
$languages = pll_languages_list(); // ['ru', 'en', 'de']

Віджет переключувача мов

Polylang реєструє віджет «Polylang Language Switcher», який можна додати до будь-якої області. Параметри: показувати прапорці, назви мов, приховувати поточну мову. У Gutenberg — блок «Language Switcher».

Для вставки в довільне місце шаблону:

// Вивести переключувач мов програмно
dynamic_sidebar( 'polylang-language-switcher' );

// Або через функцію (Pro)
pll_the_languages( [
    'show_flags'  => 1,
    'show_names'  => 1,
    'hide_if_no_translation' => 0,
] );

Polylang Pro та WooCommerce

Безплатна версія офіційно не підтримує WooCommerce — товари, атрибути, способи доставки не перекладаються повністю. Polylang Pro (або додаток Polylang for WooCommerce) додає:

  • Переклад товарів, варіацій, атрибутів
  • Мовні кошики
  • Переклад email-повідомлень WooCommerce
  • Синхронізацію запасів між перекладами товару

Обмеження безплатної версії

  • Немає синхронізації користувацьких полів між перекладами
  • Немає офіційної підтримки WooCommerce
  • Немає перекладів через REST API (/wp-json/polylang/v1/) — лише у Pro

Для невеликого корпоративного сайту без магазину безплатної версії достатньо.

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

Налаштування 2–3 мов, переклад існуючого контенту до 30 сторінок, переключувач мов — 1 робочий день. З WooCommerce, користувацькими типами, синхронізацією полів — 2–3 дні (потребує Pro).