В Laravel проекте, есть страницы с множеством html тегов как лучше всего сделать перевод?

Есть способы lang файлы, ru.json файл и includes что выбрать, есть ли другие способы в таких случаях может плагин или database ?

текста много вперемешку с html-ом․


Ответы (1 шт):

Автор решения: Максим К

Наиболее оптимальная стратегия локализации проекта - это комбинация методов.

Cтатические тексты (интерфейс, разметка) - тут лучше всего использовать lang файлы, т.к. этих файлов может быть много с самыми разными контекстами (например lang/en/auth.php, lang/en/validation.php).

Различные ошибки или внешние файлы (в vendor) - удобно использовать lang/[locale].json файлы, но здесь важен базовый язык проекта, как правило - это английский. Некоторые ошибки и темплейты из коробки laravel используют __() хэлпер, как раз json файлы позволяют это локализовать.

А вот динамический контент, который задается в админке сайта (записи, контент страницы и т.п.) - однозначно переводы хранятся в БД. Причем тут в зависимости от проекта можно хранить переводы в json полях, где ключи будут локалями, либо в отдельной таблице с morph связью

→ Ссылка