Laravelプロジェクトの日本語化

参考Webページ

ロケールとタイムゾーンの設定

タイムゾーンの変更

  • config/app.php
    timezoneで検索すれば良い。
    デフォルトはUTCだけど、日本を設定するには「Asia/Tokyo」を設定する。

言語の変更

  • config/app.php
    localeで検索すれば良い。
    デフォルトはenだけど、日本語にするにはjaを設定すれば良い。

fallback_locale

localeで設定したロケールが使えなかった場合に、代替として使われるロケール。

  • config/app.php
    fallback_localeで検索すれば良い。
    デフォルトの英語のままで良さそう。

Fakerライブラリの言語設定

テスト用データを作る時のロケールを設定する。

  • config/app.php
    faker_localeで検索すれば良い。
    ja_JPと設定すると、日本語のダミーデータが作成される。

日本語化

概要

日本語化するには上記の設定だけでなく、日本語翻訳ファイルを用意して配置する必要がある。

配置するのはプロジェクト直下のlangディレクトリだが、
Laravel 10 ではデフォルトではプロジェクト内に作成されていない。

langディレクトリ作成

次のコマンドを実行して、langディレクトリを作成する。

$ ./vendor/bin/sail artisan lang:publish

実行すると、次の結果が表示され完了する。

 INFO  Language files published successfully.

lang/enディレクトリ内のファイル

プロジェクトフォルダ/lang/enディレクトリには、次の4つのファイルがある。

  1. auth.php
    認証用。
  2. pagination.php
    ページネーション用。
  3. passwords.php
    パスワード用。
  4. validation.php
    バリデーション用。

日本語化に必要なファイル

次の5つが必要。

  1. lang/ja.json
  2. lang/ja/auth.php
  3. lang/ja/pagination.php
  4. lang/ja/passwords.php
  5. lang/ja/validation.php

Laravel Breeze 日本語化パッケージ

次のコマンドでパッケージを取得する。

$ ./vendor/bin/sail composer require askdkc/breezejp --dev

上記コマンドを実行すると、次の結果が表示される。

Info from https://repo.packagist.org: #StandWithUkraine
./composer.json has been updated
Running composer update askdkc/breezejp
Loading composer repositories with package information
Updating dependencies
Lock file operations: 2 installs, 0 updates, 0 removals
  - Locking askdkc/breezejp (v1.6.1)
  - Locking spatie/laravel-package-tools (1.15.0)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 2 installs, 0 updates, 0 removals
  - Downloading spatie/laravel-package-tools (1.15.0)
  - Downloading askdkc/breezejp (v1.6.1)
  - Installing spatie/laravel-package-tools (1.15.0): Extracting archive
  - Installing askdkc/breezejp (v1.6.1): Extracting archive
Generating optimized autoload files
> Illuminate\Foundation\ComposerScripts::postAutoloadDump
> @php artisan package:discover --ansi
   INFO  Discovering packages.  
  askdkc/breezejp ................................... DONE
  laravel/breeze ................................... DONE
  laravel/sail ................................... DONE
  laravel/sanctum ................................... DONE
  laravel/tinker ................................... DONE
  nesbot/carbon ................................... DONE
  nunomaduro/collision ................................... DONE
  nunomaduro/termwind ................................... DONE
  spatie/laravel-ignition ................................... DONE
82 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
> @php artisan vendor:publish --tag=laravel-assets --ansi --force
   INFO  No publishable resources for tag [laravel-assets].  
No security vulnerability advisories found
Using version ^1.6 for askdkc/breezejp

次のコマンドで言語ファイルを出力し、config/app.phpのロケールとタイムゾーンを日本に設定する。

$ ./vendor/bin/sail artisan breezejp

上記コマンドを実行すると、次の結果が表示される。

Laravel Breeze用に日本語翻訳ファイルを準備します
config/app.phpのlocaleをjaにします

 GitHubリポジトリにスターの御協力をお願いします🙏 (yes/no) [yes]:
 > 

sh: 1: xdg-open: not found
Thank you! / ありがとう💓
日本語ファイルのインストールが完了しました!

その後、http://localhost/へアクセスし、
プロファイルページなどが日本語化されていることを確認すれば良い。

コメント

タイトルとURLをコピーしました