Как перевести письма на русский язык?

Как можно локализовать стандартное письмо о восстановлении пароля в Laravel на русский язык без редактирования файлов в каталоге поставляемых по умолчанию?
  • 10 мая 2024 г. 6:10
Ответы на вопрос 2
Для перевода писем на русский язык в Laravel без изменения исходных файлов в каталоге поставляемых по умолчанию, можно воспользоваться механизмом локализации в Laravel.

1. Создайте новый файл с переводом на русский язык вашего стандартного письма о восстановлении пароля. Этот файл должен находиться в директории `resources/lang/ru` вашего проекта Laravel.

2. Откройте файл `resources/lang/ru/passwords.php` и добавьте туда ключи и соответствующие переводы для вашего письма. Например:
```php
<?php
return [
    'reset'     => 'Ваш пароль был сброшен!',
    'sent'      => 'Мы отправили вам ссылку для восстановления пароля на вашу электронную почту!',
    'throttled' => 'Пожалуйста, подождите перед повторной попыткой.',
    'token'     => 'Ошибка сброса пароля. Пожалуйста, повторите попытку.',
    'user'      => "Мы не можем найти пользователя с таким адресом электронной почты.",
];
```

3. Затем в вашем контроллере, где отправляется письмо о восстановлении пароля, добавьте следующий код для установки текущего языка русским и отправки письма:
```php
app()->setLocale('ru');
```

Теперь ваше стандартное письмо о восстановлении пароля будет отправляться на русском языке без необходимости изменения исходных файлов Laravel.
resources/lang/ru.json
resources/lang/en.json

Пример
{
  "Hello, World!": "Привет, Мир!"
}
__('Hello, World!');


Если с ключами, то
resources/lang/ru/auth.php
resources/lang/en/auth.php

Пример
return [
  "login": "Войти"
];
__('auth.login');
Похожие вопросы