Скидка 50% на лицензию OkayCMS PRO ! Осталось:
  • 00

    Дней

  • :
  • 00

    Часов

  • :
  • 00

    мин

  • :
  • 00

    сек

Подробнее

Как работает мультиязычность в OkayCMS 2.0

Катя Собинова
  • 124
  • 0

Рассказываем об основных изменениях в работе мультиязычности OkayCMS . Краткий мануал по добавлению новых языков для сайта и админ-панели.

Как теперь работает мультиязычность?

В версиях 1.* переводы всех фраз клиентской части сайта хранились в базе данных. Для добавления нового языка необходимо было выкачивать данные из БД, переводить и закачивать новый файл. Это, как минимум было неудобно, и как максимум утяжеляло базу данных. Кроме того, возникали сложности при добавлении новой темы сайта и переключении между ними.

Поэтому было решено изменить логику мультиязычности и хранить все фразы в php-файле. Для каждого языка отдельный файл. Такой способ значительно упрощает и ускоряет процесс добавления нового языка на сайт. Кроме того, с версии 2.* админ-панель сайта так же мультиязычна, что делает систему более гибкой и понятной для любого пользователя.

Язык админ-панели сайта

Язык админ-панели задается не глобально для сайта, а для каждого менеджера отдельно. Чтобы переключить язык необходимо:

Перейти в пункт меню Настройка сайта -> Менеджеры -> выбрать менеджера -> в блоке Настройки в выпадающем списке выбрать нужный язык.

Да, пока выбор не велик, но в дальнейшем мы добавим новые языки. И, да, сделаем выбор языка панели управления при установке системы OkayCMS.

Как добавить новый язык админ-панели?

Шаг 1. Необходимо подключиться к серверу сайта через FTP (пример пути yoursite.com/www/backend/lang)  и выкачать необходимые файлы:

  1. Файл languages_list.php, в котором хранятся названия всех языков на сайте (как админ-панели, так и клиентской части).
  2. Любой из остальных файлов php, в которых хранятся все фразы админ-панели на русском, английском и грузинском языках соответственно. Они вам пригодятся для перевода фраз интерфейса админки на новый язык.

Шаг 2. Добавить в languages_list.php название нового языка.

Создать файл new.php с переводом фраз на новый язык, где вместо new в имени файла должен стоять шифр языка, например, ua, by, ge и т.п.

Шаг 3. Загрузить оба файла на сервер в ту же директорию /backend/lang.

Язык клиентской части сайта

Управление языками клиентской части сайта осуществляется в админке с помощью страниц Языки сайта и Переводы.

На странице Языки сайта (пункт меню Настройки -> Языки сайта) располагается список добавленных на сайт языков. В списке можно изменять очередность (1) вывода языков на сайте в выпадающем меню, включать или выключать вывод языка (2), удалить язык (3).

Как добавить новый язык для клиентской части сайта?

Шаг 1. В меню Языки нажать кнопку Добавить язык, и в появившемся выпадающем списке выбрать нужный:

После выбора языка необходимо указать его название на каждом из других активных на сайте языков. Например, у вас на сайте два языка Украинский и Русский. Вы добавляете дополнительный язык - English, после чего - указываете переводы его названия на остальные языки: для украинского - Англійська, для русского - Английский.

После этого возможны два варианта добавления переводов:

Вариант 1 – по аналогии со схемой добавления переводов для админ-панели. Вариант 2 – через админ-панель сайта. Какой удобней и быстрей – решать вам. Мы опишем оба варианта.

Вариант 1.

  1. Необходимо подключиться к серверу сайта через FTP. Но теперь доступ нужен к папке design/название темы/lang (пример пути yoursite.com/www/ design/okay_shop/lang). Из данной папки нужно скопировать к себе на компьютер файл, с помощью которого вы будете осуществлять перевод фраз.

  1. Имя новому файлу с переводом фраз необходимо дать в сокращенном варианте, как это сделано в админ-панели. То есть, если вы в админ-панели выбрали язык German [de], то имя вашего файла будет de.php.
  2. Загрузите новый созданный файл на сервер в директорию design/название темы/lang.

Вариант 2.

  1. В админ-панели сайта перейдите в меню Настройки сайта ->Переводы.
  2. Тут выведены все фразы, которые используются в текущей теме, для быстрого доступа и перевода без необходимости подключения к серверу.

 

  1. Так же есть возможность добавления нового перевода. Это на случай, если на сайте, например, появился новый элемент с текстом.

Перевод контента

Относительно логики перевода контента - кардинальных изменений нет. Только отображение и размещение кнопок переключения между языками.
Теперь они всегда находятся в шапке админ-панели:

Если у вас на сайте весь контент на русском языке, то после переключения на английский, например, вам необходимо зайти в карточку товара и разместить в ней всю информацию о позиции на английском языке.

Но есть и другой способ!

Импорт/экспорт переводов

Находится этот функционал в меню Импорт/экспорт и позволяет, как экспортировать всю информацию по товарам, так и импортировать файл с переводом этой информации обратно на сайт.

Файл выгружается в формате .csv и имеет вид:

При загрузке переводов так же необходимо выбрать язык перед прикреплением файла.

Мультиязычность системы открывает возможность работы с более широкой аудиторией покупателей. Используйте этот инструмент с умом :)
Желаем успешных продаж!

Рассказать друзьям: