
WooCommerce Multilingual 5.5.0 — удобнее, быстрее и проще в использовании
Мы только что выпустили WooCommerce Multilingual 5.5.0!
Языки с направлением письма справа налево (RTL) представляют собой особую сложность. К счастью, WordPress во многом упрощает эту задачу. Мы покажем Вам, как создать полнофункциональный RTL-сайт на основе темы по умолчанию TwentyTen.
При создании многоязычного сайта с направлениями текста RTL и LTR Вам необходимо решить две задачи:
При отображении сайта Ваша тема оформления должна поддерживать правильное направление для языков RTL и LTR.
В этом руководстве мы будем использовать наш демонстрационный многоязычный сайт Twenty Ten, доступный на английском, испанском и иврите (RTL).
Вам также следует настроить WPML, чтобы разрешить перевод темы оформления и плагинов.
Если для Вас это в новинку, сначала прочитайте про модуль Управление переводами.
Вот как это выглядит, когда мы переводим запись Hello World на иврит.

Как видите, английские тексты выровнены по левому краю, а тексты на иврите — по правому. Можно даже использовать режим HTML для копирования и вставки элементов из английского языка. Режим HTML отображается в формате LTR, чтобы Вы могли правильно вводить теги.
При переводе строк WPML также отображает их в правильном направлении. Вот как выглядит экран Перевод строк при переводе заголовка виджета Search.

Модули Редактор переводов и Перевод строк позволят нам полностью перевести сайт. Далее мы рассмотрим, как правильно отображать его в нужном направлении.
Эта небольшая строка делает большую часть магии:
<html dir="rtl" lang="he-IL">
Атрибут dir="rtl" сообщает сайту, что направление отображения для всего сайта — справа налево. Браузеры понимают это и перевернут всё в правильном направлении.
Эта единственная строка PHP из файла header.php делает это возможным:
<html <?php language_attributes(); ?>>
Если HTML и CSS Вашей темы оформления следуют «безопасным» практикам, это действительно всё, что Вам нужно. Под безопасными практиками мы подразумеваем отсутствие абсолютного позиционирования или ширины. Если Вам необходимо использовать абсолютные значения, возможно, стоит рассмотреть загрузку разных CSS для каждого языка.
Вы можете легко сделать это с помощью условных операторов, которые проверяют константу ICL_LANGUAGE_CODE (описана в API программирования WPML).