柔軟な言語選択は、ログイン画面など、アプリケーションに関連付けられたプロンプトで、ユーザーが希望する言語を選択できるオプション機能です。この機能は、Universal Login の各プロンプトごとに個別に設定できます。
特定のプロンプトに対してこの機能を実装すると、対応する画面に言語選択メニューが追加されます。ユーザーはこのメニューから希望する言語を選択すると、その言語でプロンプトが自動的に表示されます。
柔軟な言語選択を実装する前に、次の要件を満たしていることを確認してください。
柔軟な言語選択の設定は、主に次の 2 つの手順で行います。
- 言語を選択できるようにページテンプレートを準備します。
- 各プロンプトを設定して、ユーザーに言語選択を表示します。
Universal Login ページテンプレートを準備する
まず、言語を選択できるようにするため、次のスクリプトを Universal Login ページテンプレート に追加します。
<script>
function updateSelectedLanguage() {
const selectElement = document.getElementById('language');
const selectedValue = selectElement.value;
const options = selectElement.options;
for (let i = 0; i < options.length; i++) {
if (options[i].value === selectedValue) {
options[i].selected = true;
} else {
options[i].selected = false;
}
}
document.getElementById('changeLanguage').click();
}
</script>
このスクリプトを使用すると、Universal Login のプロンプトに動的な言語選択メニューを表示できます。ユーザーはこのメニューから、設定済みのプロンプトに希望する言語を適用できます。
このスクリプトをページテンプレートに追加するには、Set Template for Universal Login エンドポイントを使用します。
この呼び出しを行うと、Universal Login ページテンプレートに対して行った既存の設定はすべて上書きされます。中断を避けるため、この呼び出しには必要なページテンプレートのカスタマイズをすべて含めてください。
次に、カスタムプロンプトパーシャルを設定して、1 つ以上の Universal Login プロンプトに言語選択機能を追加します。パーシャルとは、ログイン画面など、プロンプトの画面内にあるエントリポイントに挿入するカスタムコードのことです。詳細については、Signup および Login プロンプトのカスタマイズを参照してください。
特定のプロンプトに言語選択を追加するには、Auth0 の を使用して、以下のパラメーターでカスタムプロンプトパーシャルを設定します。
| パラメーター | 説明 | 値の例 |
|---|
language | 必須。
ユーザーに表示される言語選択メニューに含める 1 つ以上の言語を指定します。 | es,fr,en |
persist | 必須。
セッションをまたいで言語設定を保持するかどうかを指定します。 | session |
action | 任意。
プロンプトを進めずにユーザーが言語を変更できるようにする場合は、このパラメーターを使用します。
この値を指定すると、ユーザーが言語を変更してもフォームは自動送信されません。指定しない場合は、別の言語を選択するとプロンプトが自動的に進みます。 | change-language |
以下のセクションでは、さまざまな種類の Universal Login プロンプトに対応するコードサンプルを確認できます。
以下のコードサンプルでは、プレースホルダーを適切な値に置き換えてください。
{yourDomain} を yourdomain.auth0.com に置き換えます。
{mgmtApiToken} をお使いのアクセストークンに置き換えます。
ログインプロンプト: パスワードレス(メールアドレス)