Мультиязычный сайт на WordPress строится на плагине, который хранит перевод каждой записи как отдельный пост и связывает версии между собой. Два основных варианта — Polylang и WPML. Разберем разницу между ними и порядок настройки на примере сайта с русской, украинской и английской версией.
Чем отличаются Polylang и WPML
Polylang бесплатен в базовой версии и покрывает перевод записей, страниц, рубрик и меню. Платная версия Polylang Pro добавляет перевод произвольных типов записей и слагов URL. WPML — полностью платный плагин с более широким охватом «из коробки»: перевод строк темы без правки кода, встроенный сервис машинного перевода и совместимость почти со всеми крупными билдерами страниц.
На практике для блога или корпоративного сайта с 2–3 языками достаточно Polylang. WPML оправдан, если нужен перевод сложного функционала WooCommerce или у редакторов нет доступа к файлам темы для правки строк.
Как настроить языки в Polylang
После активации плагина мастер настройки запросит список языков сайта. Добавьте нужные локали в разделе «Языки → Языки» с кодом по стандарту ISO 639-1: ru, uk, en. Каждому языку назначается свой флаг и порядок в переключателе.
wp pll lang create ru "Русский" ru_RU
wp pll lang create uk "Українська" uk
wp pll lang create en "English" en_US
Команды WP-CLI работают, если на сайт установлен пакет polylang-cli; без него языки добавляются только через интерфейс.
Как перевести записи, меню и виджеты
У каждой записи в редакторе появляется блок «Языки» с флагами: клик по плюсу у нужного языка создает связанную копию записи для перевода. Слаг, заголовок и содержимое переводятся независимо, а связь между версиями сохраняется по внутреннему ID перевода.
Меню переводятся отдельно в разделе «Внешний вид → Меню» — под каждый язык нужно собрать свою версию меню и назначить ее в настройках темы. Виджеты, если тема их поддерживает, размещаются через встроенный виджет Polylang «Переключатель языков», который сам подставляет ссылки на переведенные версии.
Как настроить SEO для многоязычного сайта
Polylang сам добавляет атрибут hreflang на каждую страницу, помечая связанные переводы для поисковых систем. Мета-теги (заголовок, описание) переводятся через плагин Yoast SEO отдельно для каждой языковой версии записи — подробная настройка описана в статье про Yoast SEO. Структуру URL стоит выбрать заранее: с префиксом языка (/en/page/) или на отдельных поддоменах — смена схемы после запуска требует настройки редиректов.
Polylang и WPML: сравнение возможностей
| Возможность | Polylang (бесплатный) | WPML |
|---|---|---|
| Перевод записей и страниц | да | да |
| Перевод строк темы без кода | нет (только Pro) | да |
| Машинный перевод | нет | да, платный сервис |
| Поддержка WooCommerce | частично, нужны доп. плагины | да, отдельный модуль |
Частые проблемы после установки
Дубли страниц в поисковой выдаче почти всегда означают, что hreflang настроен неверно или отсутствует связь между переводами — проверьте это в блоке «Языки» каждой записи. Падение скорости сайта после установки WPML — известная особенность плагина при большом числе записей: включите кэш переводов в настройках модуля String Translation. Если сайт до этого переносился на новый адрес, порядок действий описан в статье про смену домена WordPress.
Чек-лист запуска мультиязычного сайта
- Выбран плагин: Polylang для типового сайта, WPML — для сложного функционала и перевода строк темы.
- Настроены все языковые версии с корректными кодами ISO 639-1.
- Переведены меню, виджеты и мета-теги через Yoast SEO для каждого языка.
- Проверен атрибут
hreflangна связанных страницах. - Структура URL выбрана заранее и не потребует смены схемы после запуска.