2.2. テーマの変更
2.2.1. ウェルカムテーマの変更
'ウェルカム' テーマが新しいレイアウトを使用するように更新されました。現在は PatternFly 3 ではなく PatternFly 5 を使用しています。テーマを拡張する場合、または独自のテーマを提供する場合は、次のように更新する必要がある場合があります。
2.2.1.1. PatternFly 3 から PatternFly 5 への移行
ウェルカムテーマは、Red Hat build of Keycloak の中で最も古いテーマの 1 つでした。元々は PatternFly 3 をベースにしていましたが、メジャーバージョンを 1 つスキップして PatternFly 5 を使用するように更新されました。カスタムテーマによって組み込みテーマを拡張する場合は、PatternFly 5 構文を使用するようにカスタムテーマを更新する必要があります。詳細は、PatternFly 5 のドキュメント を参照してください。
独自のカスタムテーマで PatternFly 3 をまだ使用している (組み込みテーマを拡張していない) 場合は、引き続き使用できます。ただし、PatternFly 3 のサポートは今後のリリースで削除されるため、できるだけ早く PatternFly 5 への移行を検討してください。
2.2.1.2. 管理コンソールへの自動リダイレクト
管理コンソールが有効になっている場合は、管理ユーザーがすでに存在すると、ウェルカムページが自動的に管理コンソールにリダイレクトされます。この動作は、theme.properties
ファイルで redirectToAdmin
を設定することで変更できます。デフォルトでは、このプロパティーは false
に設定されていますが、組み込みテーマを拡張する場合は、このプロパティーを true
に設定します。
2.2.1.3. documentationUrl
および displayCommunityLinks
プロパティーの削除
これらのプロパティーは、以前はナビゲーション要素に使用されていましたが、現在は存在しません。組み込みテーマを拡張すると、これらのプロパティーは効果がなくなるため、theme.properties
ファイルから削除する必要があります。
2.2.1.4. アセットが 'common' リソースからロードされるようになる
背景、ロゴ、ファビコンなどの画像が、テーマリソースではなく、'common' リソースからロードされるようになりました。このように変更されたため、組み込みテーマを拡張してこれらの画像を上書きする場合は、画像をテーマの 'common' リソースに移動し、theme.properties
ファイルを更新して新しいパスを含める必要があります。
# This defaults to 'common/keycloak' if not set. import=common/your-theme-name
2.2.2. Account Console テーマのカスタマイズの変更
以前に、現在非推奨の Account Console テーマのバージョン 2 を拡張していた場合は、新しい Account Console テーマのバージョン 3 を使用するようにテーマを更新する必要があります。Account Console テーマの新しいバージョンでは、カスタマイズ方法に関していくつかの変更が加えられています。最初から始めるには、新しい カスタマイズクイックスタート に従ってください。
カスタムテーマを移動するには、まず parent
を新しいテーマに変更します。
# Before parent=keycloak.v2 # After parent=keycloak.v3
カスタムの React コンポーネントがある場合は、相対パスを使用するのではなく、React を直接インポートします。
// Before import * as React from "../../../../common/keycloak/web_modules/react.js"; // After import React from "react";
テーマのカスタマイズに content.json
を使用している場合は、ファイルの構造にいくつかの変更点があります。具体的には次の点です。
-
content
プロパティーの名前がchildren
に変更になりました。 -
id
、icon
、およびcomponentName
プロパティーが削除されました。modulePath
が同じ機能を提供しているためです。
2.2.3. テーマの言語ファイルのデフォルト設定が UTF-8 エンコード
このリリースでは、リソースバンドルファイルを UTF-8 でエンコードすることを想定している Java 以降の標準メカニズムに準拠するようになりました。
以前のバージョンの Keycloak では、# encoding: UTF-8
のようなコメントを使用して最初の行にエンコーディングを指定することがサポートされていました。これはサポートされなくなり、無視されます。
テーマのメッセージプロパティーファイルが UTF-8 エンコードで読み取られるようになり、自動的に ISO-8859-1 エンコードにフォールバックされます。別のエンコードを使用している場合は、ファイルを UTF-8 に変換してください。