Переводы и языки


Как устроены переводы

У каждого меню есть оригинальный язык (source_locale) — тот, на котором введены исходные тексты. Внутри это работает так:

  • Переводится содержимое меню: названия секций, названия и описания блюд, названия групп модификаторов и их опций. Название и адрес заведения, имена зон и столов — собственные имена, они не переводятся.
  • Каждое переводимое поле хранит одну исходную строку — оригинал. Это единственный «источник истины»: ровно один оригинал на поле.
  • На каждый добавленный язык хранится по одной строке-переводу этого поля.
  • Переводы всегда порождаются из исходной строки; если перевода нет, гость и персонал видят оригинал (см. фолбэк).

{warning} Особый случай после AI-скана: если бумажное меню было на смеси языков (например, английские названия и вьетнамские описания), у меню нет единого оригинала. Отредактируйте тексты и добавьте нужные языки переводом — дальше всё работает как обычно.

{info} Из этой модели следуют все правила ниже: у поля не бывает «двух оригиналов», а перевод без оригинала невозможен — поэтому новые позиции создаются только на оригинальном языке.

Переключатель языков

В шапке редактора — переключатель языка контента: он определяет, на каком языке вы сейчас видите и редактируете тексты меню. Список разбит на две группы:

  • «Уже переведены» — языки, которые есть у меню. Оригинальный язык закреплён сверху с пометкой «Оригинал». Клик переключает язык редактора.
  • «Другие языки» — языки, которых ещё нет, со значком ✨. Клик предлагает создать язык переводом (см. ниже).

Переключатель языка

Добавление языка (AI-перевод)

Нажмите язык в группе «Другие языки» и подтвердите — весь текущий состав меню уйдёт на фоновый AI-перевод (очередь). Редактор при этом не переключается в пустой язык: язык «рождается» уже заполненным, когда перевод готов.

  • Это асинхронно: перевод появляется через минуту-другую, страница подскажет.
  • Точечные правки оригинала после этого досылаются в переводы автоматически — фоновая синхронизация подхватывает изменённые поля.
  • Быстрые кнопки популярных туристических языков есть также на экране успеха после создания меню и в чек-листе запуска.

{info} AI-перевод — черновик хорошего качества, но не гарантия: терминологию и фирменные названия стоит вычитать. Любую строку можно поправить руками — см. ниже.

Ручная правка перевода

Переключите язык редактора на нужный и отредактируйте название/описание — сохранится перевод в этом языке, не затрагивая оригинал. На гостевой при ?lang=<язык> показывается перевод.

Фолбэк непереведённого

Если поле не переведено на запрошенный язык, показывается текст оригинального языка. Пример: имя переведено на vi, а описание — нет → на ?lang=vi имя по-вьетнамски, описание на оригинале. Пустых дыр в меню не бывает.

Создавать можно только на оригинале

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

Почему так: позиция, созданная «внутри перевода», не имела бы исходной строки — во всех остальных языках (и на кухонном тикете, который замораживает имена в момент заказа) она оказалась бы безымянной.

{warning} Блокируется только создание. Переименовывать и править существующие тексты можно в любом языке — это и есть перевод.

Смена оригинального языка

В меню действий переведённого языка есть «Сделать оригинальным языком». Условие: целевой язык должен быть полностью переведён (все исходные поля) — иначе операция отклоняется. После смены существующие переводы сохраняются, а новые позиции создаются уже на новом оригинале.

Удаление языка и лимит

  • Удалить язык — в меню действий языка; оригинальный язык удалить нельзя.
  • У меню есть предел количества языков — он зависит от тарифа (лимиты); при его достижении список «Другие языки» сменяется плашкой о лимите. Держите те языки, на которых реально читают ваши гости.