Перейти к содержимому

Переводы

Все строки, которые пакеты показывают пользователю, — результаты аудита, предупреждения под полями Filament при редактировании, подписи, предпросмотр и отчёты — хранятся в языковых файлах Laravel. Пакеты используют app()->getLocale(): панель с итальянской локалью показывает итальянский текст без дополнительной настройки.

Коды проблем и предупреждений (missing_title, title_too_long, …) никогда не меняются и не переводятся. Переводится только понятное человеку описание, связанное с кодом.

В комплект входят английский и итальянский (прежние строки проверены; изменённые требуют повторной проверки), а также первые версии переводов на немецкий, французский, испанский, бразильский португальский, нидерландский, турецкий, русский и польский (Tier 1). Начиная с ядра 3.16 / Filament 1.10 / Pro 2.35 также доступны японский, упрощённый китайский (zh_CN), традиционный китайский (zh_TW), корейский, греческий, украинский и чешский (Tier 2). Точный статус каждой локали указан в TRANSLATING.md; именно проверка носителем языка переводит первую версию перевода в статус поддерживаемого языка.

Переопределение строки

bash
php artisan vendor:publish --tag=seo-lang            # core (3.13+)
php artisan vendor:publish --tag=seo-filament-lang   # Filament fields (1.6+)
php artisan vendor:publish --tag=seo-pro-lang        # Pro (2.31+)

Затем измените lang/vendor/seo/{locale}/seo.php и соседние каталоги других пакетов. Оставленные вами ключи переопределяют строки; остальные берутся из файла пакета, а при отсутствии перевода — из английского.

Добавление перевода

Скопируйте файл en для своей локали, переведите значения, сохраните все :placeholder, запустите тесты и откройте pull request. Тест соответствия завершается ошибкой при отсутствии ключа, лишнем ключе, пустом значении или потерянном плейсхолдере. Полные правила и глоссарий находятся в TRANSLATING.md.

Что намеренно не переводится

По умолчанию интерфейс CLI использует английский. Задайте seo.cli_locale / SEO_CLI_LOCALE или передайте --display-locale=it, чтобы перевести поддерживаемые сообщения и сводки аудита. У Pro есть собственная настройка seo-pro.cli_locale. Язык интерфейса не зависит от локали контента, выбранной через --locale.

  • Справка команд, служебная диагностика и вывод seo:explain остаются на английском; подписи PASS/WARN/FAIL не меняются.
  • Вывод HTML (<meta>, JSON-LD) использует язык вашего контента, а не пакета.
  • Коды проблем, ключи JSON и коды статусов остаются стабильными идентификаторами. Подписи для человека в выводе --json могут переводиться; интеграциям следует использовать ключи и коды.

Другая сторона: язык вашего контента

Эта страница посвящена языку пакета. Как он учитывает язык вашего контента — ограничения длины заголовков для разных систем письма, обрезку текста, регистр, правила hreflang, inLanguage, региональные поисковые системы и шрифты OG-изображений, — описано в разделе «Многоязычный контент».

rankbeam/laravel-seo распространяется под лицензией MIT.