- 2языка в поставке: русский и английский
- 6 400+строк интерфейса в каждом словаре
- 1вкладка в форме материала на каждый язык
- 0строк кода, чтобы добавить язык
Язык — кирпич
Поставили — заговорил. Сняли — исчез без следа
Язык устроен так же, как тема, шаблон или модуль: ставится одной кнопкой и снимается, ничего не сломав. Переключатель в шапке сайта сам показывает те языки, что стоят сейчас.
Из Маркета — уже переведённым
Язык из Маркета приезжает со всеми словарями сразу, а не пустым набором из тысяч строк, которые кто-то должен перевести руками. Поставка подписана, совместимость видна до нажатия.
Свои правки не пропадут. Поправили формулировку в словаре, а потом обновили язык из Маркета — ваш прежний файл сохранится рядом с пометкой .moya, а новая версия встанет на место. Базу данных поставка языка не трогает вовсе.
Две половины
Интерфейс и тексты переводятся по-разному
Кнопки — словарём, тексты — в материале
Обычно система умеет одно из двух. Переведены кнопки — а новости остались на исходном языке. Переведены статьи — а в меню по-прежнему «Главная» и «О нас».
Здесь обе половины разделены, и у каждой свой инструмент.
- Интерфейс — подписи панели и сайта, письма, ошибки форм: раздел «Локализация» → «Переводы»
- Содержимое — заголовки, тексты, меню, рубрики, слайды: вкладка языка прямо в форме записи
- Форматы — дата, время, разделители, валюта и часовой пояс: настройки страны

Рядом с оригиналом
Одна страница — несколько языков, а не копии страниц
Вам не нужно заводить вторую страницу «О нас» для английской версии и следить, чтобы обе совпадали. Страница одна, у неё есть вкладки языков.
- Поле за полемПеревод хранится в общей таблице рядом с записью: одна строка — одно поле одной записи на одном языке.
- Вкладки появляются самиПоставили язык — в формах страниц, новостей и рубрик появилась его вкладка с тем же редактором, что наверху.
- Нет перевода — виден оригиналНепереведённое поле показывает текст основного языка, а не пустое место. Сайт цел, пока перевод в работе.
- Основной язык подписанВерхние поля формы всегда пишут в основной язык, и над редактором стоит метка с флагом — английский текст не уедет на русскую версию по ошибке.
- Что переводитсяСтраницы и новости вместе с SEO-заголовком и описанием, пункты меню, рубрики, слайды и их подписи, фрагменты, уведомления.
- Корзина бережёт переводыНовость в корзине сохраняет переводы и вернётся вместе с ними. Удалили насовсем — переводы уходят следом.
- Демо — сразу с переводомСтартовое содержимое ставится вместе с английским переводом, а повторная заливка не трогает то, что вы поправили руками.
- Форматы по стране31.12.2026 или 12/31/2026, 23:59 или 11:59 PM, ₽, $ или €. Готовые наборы стран подставляются кнопкой «Импорт».
Словари
Редактор словарей прямо в панели
Слева эталон, справа перевод. Ни файлов, ни программиста — только список строк и поле ввода.
Те же файлы, что у разработчика
Второго хранилища переводов в базе нет, а значит, нет и двух источников правды. Правки видны в истории проекта.
Ничего не потеряется
Перед записью снимается резервная копия файла, сама запись атомарная, пояснения разработчика в шапке сохраняются.
Прогресс — ориентир, а не экзамен. Строка считается непереведённой, если совпадает с эталоном, а слова вроде «Email» законно одинаковы в обоих языках. Поэтому 100 % бывает недостижимо — и это нормально.
Пошагово
Новый язык за пять шагов
- Поставьте язык. Из Маркета — уже переведённым. Нужного там нет — «Локализация» → «Переводы» → новая локаль: набор ключей копируется с эталона, ничего не теряется.
- Допереведите интерфейс. Откройте раздел словаря, включите фильтр «только незаконченные» и идите по списку сверху вниз.
- Настройте страну. Формат даты и времени, разделители, валюта и часовой пояс. Готовый набор подставится кнопкой «Импорт», дальше его можно поправить.
- Переведите содержимое. Откройте страницу или новость — вкладка нового языка уже там. Начните с меню и главных страниц: их видят первыми.
- Покажите посетителям. Язык появляется в переключателе в шапке сайта и в панели. Выбор запоминается для каждого посетителя лично.
Не только слова
Мелочи, на которых спотыкается перевод
Перевод ломается не на словах, а на окончаниях, флагах и запятых. Вот что сделано заранее.
Как обычно
- «5 товар(ов)» — система не знает русских окончаний
- Флаги набраны эмодзи, и Windows рисует вместо них две буквы в рамке
- Дата и цена в чужом формате: где-то запятая отделяет копейки, где-то тысячи
- Шрифт с кириллицей тянется с чужого сервера, и каждый посетитель отмечается у постороннего
- Мастер установки говорит только по-английски
С NEXUM-CORE
- «1 товар», «2 товара», «5 товаров» — числительные склоняются по правилам языка
- Флаги нарисованы и одинаково видны в любой системе
- Форматы дат, чисел и валюты задаются по стране, часовой пояс — оттуда же
- Шрифты с кириллицей лежат на вашем сервере
- Мастер установки спрашивает язык на первом же шаге, ещё до базы данных
Русский язык здесь эталонный, а не «ещё один поддерживаемый»: система написана на нём и переведена с него. Отсюда правильные падежи в сообщениях и окончания у счётчиков.
Поисковики
Языки и SEO — без фокусов
Пример из жизни: клиника, к которой приходят иностранные пациенты. В поиске сайт русский, а пациент нажимает переключатель в шапке и читает о врачах и ценах по-английски.
- Одна страница — один адрес. Язык выбирает посетитель, а не адрес, поэтому у поисковика нет дублей одной страницы на разных языках.
- Язык браузера не угадывается — намеренно. Иначе робот поисковика попадал бы на страницу на случайном языке, и в выдачу уходил бы случайный язык. Google прямо советует так не делать.
- Поисковик видит основной язык. Поэтому на нём должны быть заполнены все тексты, заголовки и описания — модуль SEO заполнит пустые сам.
- Заголовок вкладки и описание страницы переводятся вместе с текстом, а атрибут
langиog:localeследуют за выбранным языком — экранные дикторы и переводчики браузера читают правильно.
Важно до покупки. Отдельных адресов для языков (вида /en/…) и разметки hreflang сейчас нет. Если вам нужна отдельная выдача на каждом языке, напишите до покупки — честно скажем, подойдёт ли.
Вопросы
Что спрашивают про языки
Какие языки есть сейчас?
В поставке русский и английский. Языки из Маркета ставятся одной кнопкой. Нужного там нет — он заводится в панели копией эталона и переводится в редакторе словарей.
Нужен ли программист, чтобы добавить язык?
Нет. Язык ставится из Маркета или заводится в панели, интерфейс переводится в редакторе словарей, содержимое — во вкладках материалов. Ни одной строки кода.
Можно ли сделать основным другой язык?
Да: в Маркете у языка есть кнопка «Сделать основным», в консоли — php artisan market:primary-language. Основной язык снять нельзя — сначала назначьте основным другой.
Что увидит посетитель, если страница не переведена?
Оригинал на основном языке. Пустых мест и технических ключей вместо подписей не будет: непереведённое поле всегда показывает исходный текст.
Есть ли машинный перевод?
Встроенного нет, и это следует из главного правила: сайт не отправляет ваши тексты на чужие серверы. Перевод вставляется во вкладку языка — сделанный вами, переводчиком или любым сервисом, которому вы доверяете.
Перевёл строку, а на сайте старая. Почему?
Переводы кешируются ради скорости. Обновите страницу; если не помогло, в разделе «Локализация» есть кнопка сброса кеша.
Что будет с выбором пользователей, если язык снять?
Они увидят сайт на основном языке. Панель предупредит об этом до нажатия и назовёт число таких пользователей, а недостающие подписи возьмёт основной язык — пустых мест не появится.