Laravel10を日本語化する4つのステップを紹介します。
注意点として、Laravel9までと異なり、Langディレクトリがデフォルトで存在しません。自分で作成する必要があります。
Laravel10日本語化のための4ステップ
まずはデフォルトの設定から変更していきましょう。
①デフォルトの設定を変更する
app/config のapp.phpファイルを開き、86行目あたりのlocale を en から ja に変えておきます。
ちなみに、その下の ‘fallback_locale’は、設定したlocaleが使えなかった場合に使用する言語をいれます。こちらは、デフォルトの英語のままで良いでしょう。
さらにその下の ‘faker_locake’は、テスト用のフェイク(ダミー)データを作る時の言語を指定します。ここは ‘ja_JP’としておくと、日本語のダミーデータが作れます。

「渡辺学」みたいな、実在しそうな名前のテストデータを作れて楽しいですよ。詳しくは下記記事をどうぞ。
② langディレクトリ(フォルダ)を作る
なお残念ながら、言語の設定を変えただけでは、日本語にはなりません。Laravelはデフォルトでは英語用のメッセージしかないので、日本語訳を追加してあげる必要があります。
日本語訳の置き場所は、プロジェクト直下のlangの中となります。Laravel9では、langディレクトリはデフォルトで存在しましたが、Laravel10からは自分で作成する必要があります。
下記コマンドを実行します。
1 |
php artisan lang:publish |
③ ja.jsonファイルを作る
次に、langの中にja.jsonファイルを作ります。ここに基本部分の日本語を入れていきます。
入れ方は、下記のとおりです。
ただ、自分ですべて入れていくのはしんどいですよね^^;
GitHubに良いライブラリがあるので、そちらのファイルを利用させてもらうとラクです。
ライブラリはいくつかありますが、日本語訳の品質の高さでいえば、おすすめは、askdkc/breezejp です。
④ jaディレクトリを作る
コマンド実行後、プロジェクトにはlangディレクトリができます。この中には、enディレクトリが入っています。enの中には、4つのファイルが入っています。
それぞれ、下記の時に使用するメッセージが入っています。
auth.php | 認証用 |
---|---|
pagination.php | ページネーション用 |
passwords.php | パスワード用 |
valication.php | バリデーション用 |
このenをコピーして、jaディレクトリを作りましょう。各ファイルの中に日本語訳を入れていけば、認証・ペジネーション・パスワード・バリデーションに関連するメッセージが日本語になります。

こちらも、GitHub上のライブラリにある翻訳を使わせてもらうと良いですよ。
Laravel公式マニュアル
Laravelの公式マニュアルでも、下記ページに日本語化のためのコマンドが紹介されています。
ja.jsonファイルについての翻訳はないのですが、バリデーション等、4つのファイルの翻訳が入手できます。
ただマニュアルどおりコマンドを実行すると、resourcesの中にlangフォルダが出来てしまいます。Laravel8まではresourcesの中にlangが出きたためです。場所は、手動で変更してください。

langディレクトリの変遷の歴史が感じ取れますね。
翻訳されていない場所を個別に翻訳する
これでエラーメッセージは日本語になりましたが、自分で追加したフィールド名は英語のまま残っていたりします。
この部分を日本語にするには、lang/ja/validation.phpファイルを編集する必要があります。
まずは、日本語化したい箇所をチェックしておきましょう。たとえば、上記のフォームの「件名」は、次のコードで書かれています。
1 |
<input type="text" name="title" class="form-control" id="title" > |
name属性の【title】部分がエラーメッセージに使われています。
次に、lang/ja/validation.phpを開き、’attributes’ に翻訳を追加していきます。
たとえば、titleを「件名」、bodyを「本文」としたい場合は、下記のようにします。
1 2 3 4 |
'attributes' => [ 'title'=>'件名', 'body'=>'本文', ], |
これで、新たに追加した部分も日本語化できます。
おまけ:日本語を入れる時の注意点
なおjsonファイルは、最後の閉じカッコの前に不要なカンマがあったりするとエラーになるので、気を付けてくださいね(経験談)。
さいごに
Laravel10に対応して、日本語化について説明しました。Laravel10については、派手な変更はないものの、型指定の追加など、重要な変更が行われています。
実はわたしのほうでは、Laravel10に対応したLaravelの本を執筆中ですが、こういった部分も分かりやすく解説しています。
「せっかくだから、最新版のLaravel10を使って、Laravelを学びたい」
と思ったら、こちらの本を活用してくださいね。現在、Amazonさんで予約購入できます。

予約購入いただいた方には、「クラス」を分かりやすく解説したミニ教本プレゼント中♪ 詳しくは、こちらのページをご覧ください。
コメント