メインコンテンツまでスキップ

ローカライズ言語

Logto は幅広い事前定義済み言語をサポートしており、さらに 113 の追加言語タグを提供しています。この強力なツールにより、サインイン体験をカスタマイズし、独自の言語オプションや翻訳を作成・管理できます。

Logto コンソールでのカスタマイズ手順

Logto コンソールでコーディング不要で簡単に言語設定をカスタマイズできます。

  1. 移動先: コンソール > サインイン体験 > コンテンツ > 言語
  2. 言語の管理: 「言語を管理」ボタンをクリックして言語ライブラリにアクセスします。
    • 既存言語の編集:Logto が提供する言語の翻訳をカスタマイズできます。これらの言語は削除できませんが、変更内容はデフォルト値を上書きします。
    • 新しい言語の追加:「言語を追加」ボタンをクリックし、言語タグを選択、翻訳を入力して保存すると新しい言語が追加されます。
  3. 自動検出の有効化:有効にすると、ユーザーのデバイス設定に基づいてサインインページが自動的にユーザーの優先言語で表示されます。
  4. デフォルト言語の設定:言語ライブラリからデフォルト言語を選択できます。検出されたユーザー言語が現在の言語ライブラリに含まれていない場合に使用されます。

言語管理時に理解しておくべき主な用語は以下の通りです:

定義説明
言語タグ言語タグはコンテンツの言語を識別します。言語タグは言語コード(例: en, fr, zh)と国/地域コード(例: US, UK, KR)をハイフンで区切って構成されます。例: en-US のようになります。
Logto 提供言語Logto 提供言語は Logto 公式の言語であり、Logto のオリジナルコードベースに保存されています。
追加言語追加言語はユーザーによって追加された言語です。
Logto ソース値Logto ソース値は、ユーザーによってカスタマイズされていない Logto から提供された値です。
カスタム値カスタム値は、ユーザーによってすでにカスタマイズされた値です。Logto ソース値は上書きされます。

Management API を使ったカスタマイズ

Management API PUT /api/custom-phrases/{languageTag} を利用して言語翻訳をカスタマイズできます。API リクエストボディは次のような部分的なロケールオブジェクトです:

{
"input": { "username": "Username", "password": "Password" },
"secondary": {
"social_bind_with": "すでにアカウントをお持ちですか?ソーシャルアイデンティティで {{methods, list(type: disjunction;)}} をリンクしてサインインしてください。"
},
"action": { "sign_in": "サインイン" },
"error": {
"general_required": "{{types, list(type: disjunction;)}} は必須です"
},
"list": { "or": "または" },
"user_scopes": {
"descriptions": { "custom_data": "カスタムデータ" }
}
}

すべてのカスタマイズ可能な内容については ソースコード を参照してください。

また、PATCH /api/sign-in-exp API を使って 言語検出ポリシー を制御することもできます。

実行時の言語解決

実行時、サインイン体験の言語は次の優先順位で決定されます:

  1. 現在の認証リクエストの ui_locales OIDC パラメーター(最初にサポートされているタグが使用されます)。詳しくは ui_locales を参照してください。
  2. それ以外の場合、「自動検出」が有効なら、検出されたユーザークライアント言語(例:HTTP Accept-Language ヘッダーから)。
  3. それ以外の場合、サインイン体験のテナントのデフォルト言語。

この解決方法は、インタラクションによってトリガーされるメッセージのメールローカライズにも影響します。詳しくは メールテンプレートのローカライズ をご覧ください。

ユースケース

追加した言語はエンドカスタマーにどのように表示されますか?

例えば、英語がデフォルト言語で自動検出がオンになっているウェブサイトがあるとします。日本からのユーザーがサイトにアクセスし、アカウントを作成しようとします。もしアプリの言語として日本語を使用していても、Logto がまだその言語をサポートしていなければ、サインイン画面は英語で表示されます。

Logto のサインイン体験 i18n により、カスタマイズした言語が利用可能になります。

ja 言語タグをクリックして独自の日本語翻訳を追加してください。

このようにして、日本からアクセスするユーザーは、英語から翻訳した日本語のコンテンツを読むことができるようになります。

よくある質問

追加した言語が Logto 提供言語になった場合はどうなりますか?

左側の言語タグの隣に Logto 提供タグが表示され、追加した言語は削除できなくなります。変更した値は引き続き有効で、元の Logto 値を置き換えます。Logto のデフォルト設定値を使用したい場合は、ユーザーが入力した値を消去してください。

一部のカスタム値だけを追加した場合はどうなりますか?

最終的にユーザーが目にするのは、2 つのカラムがマージされた結果です。 Logto が提供する元のコンテンツの一部だけを調整したい場合、サインアップ画面と Logto が提供する画面の違いは編集したキーのみとなります。他のコンテンツは変更されません。

アプリケーションでアラビア語および RTL(右から左)言語レイアウトをサポートする