Локализация — это не только перевод кнопок. Язык интерфейса и язык содержимого живут отдельно, и оба правятся в панели: словари — графическим редактором, материалы — вкладкой «Переводы» в самой записи. Разработчик для этого не нужен.
- 2 языка интерфейса в поставке
- 0 строк кода, чтобы добавить третий
- 1 вкладка, чтобы перевести материал
Две половины перевода
Системы обычно умеют что-то одно. Переведён интерфейс — а новости остались на исходном языке. Переведены материалы — а кнопки в панели по-английски.
Здесь разделены обе половины, и каждая правится своим инструментом: интерфейс — словарями, содержимое — прямо в форме материала, рядом с оригиналом.
Редактор словарей прямо в панели
Те же файлы, что у разработчика
Отдельного хранилища переводов в базе нет — значит, нет и двух источников правды. Правки ложатся в те же файлы и попадают в историю изменений проекта.
Ничего не потеряется
Перед записью создаётся резервная копия, сама запись атомарная, а пояснения разработчика в шапке файла сохраняются.
Новый язык — без разработчика
- Завести язык. Раздел «Локализация» → «Переводы» → создать локаль. Набор ключей копируется с эталонного языка, ничего не потеряется.
- Перевести. Строки открываются списком с поиском и фильтром «только непереведённые».
- Показать посетителю. Язык появляется в переключателе шапки сайта и в панели. Выбор запоминается.
Не только слова
- Форматы дат, времени и чисел задаются по стране: где-то запятая разделяет копейки, где-то тысячи. Часовой пояс — оттуда же.
- Числительные склоняются по правилам языка. «1 товар», «2 товара», «5 товаров» — русская тройка форм, а не «5 товар(ов)».
- Флаги нарисованы, а не набраны эмодзи. Windows их попросту не рисует: в переключателе языка вместо флага были бы две буквы в рамке.
- Мастер установки говорит на обоих языках — выбор на первом же шаге, ещё до того, как появилась база данных.
Кириллица без чужих серверов
Шрифты с поддержкой кириллицы лежат на вашем сервере. Это не только про независимость: подключённый чужой шрифт означает, что каждый посетитель отмечается у того, о ком его не предупреждали, — а для сайта государственной или медицинской организации это отдельный разговор с проверяющим.
Русский язык здесь эталонный, а не «ещё один поддерживаемый»: система написана на нём и переведена с него. Отсюда и падежи в сообщениях, и правильные окончания у счётчиков — то, что обычно теряется при переводе с английского.
Нужен язык, которого нет?
Он заводится из панели за один вечер: перевести нужно интерфейс, а не систему. Помочь с этим мы тоже можем.