問題
- インスタンス設定でアメリカ英語とイギリス英語の両方を利用できるようにしたいのですが、英語以外の言語をデフォルト言語として設定しているサイトでは、どちらか一方しか使用できません。
- URLは次のように表示される: www.portal.com/en
しかし、言語の長い形式は次のように表示される: www.portal.com/en_GB -
Available Languages セクションの英語の順番を変更し、
en_GB
をen_US
の前に持ってきた。 これで一旦は問題が解決したのだが、環境に新たな変更が加えられたことで、この変更はもはや機能しなくなった。 言語の順序はもはや問題ではないので、en_GB
、長文のURLで表示される。
環境
- DXP 7.2
解像度
- ポータルのデフォルト言語は、
en_US
ですが、他の国のホームページでは、使用可能な言語はローカル言語(例:de_DE
)+en_GB
(en_US
ではありません)です。 -
この問題は、これらの多言語の国別ページに関連しており、URLの長文に英語が
en_GB
と表示されています。 - コア製品は、
en_GB
とen_US
のロングフォームを使用して、両方が利用可能な場合に区別するように設計されているため、これはLiferayの意図した動作です。 - つまり、必要な動作(
www.portal.com/en_GB
の代わりに、www.portal.com/en
を、2つの英語バリエーションが有効な状態で持つ)を実現するためには、機能のコアを変更することを意味する。
回避策
- 英語のロケールを1つ削除する。
- 希望するURLにリダイレクトするよう、ウェブサーバー・レベルでルールを設定してみてください。 このスレッド はその例です。また、より詳細なリダイレクトの例については nginx redirection の記事もご覧ください。
-
機能リクエスト を開いてください。
- これは、当社の製品チームがリクエストを評価するための正式なプロセスです。
- 説明文に詳細を書き込むことで、商品にあなたらしさを加えることができます。
- 残りの詳細についてチームと議論するために、さらにコメントを追加してください。
- 機能リクエストの実装は開発者の判断に委ねられ、新機能は将来のLiferayリリースにのみ追加されることにご注意ください。
-
カスタマイズ
Liferayのソースコードを変更し、お客様のビジネスニーズに合った独自のソリューションを開発することがいつでも可能です。 そうすることで、コードの修正に起因するバグに対するサポートが制限される可能性があることにご注意ください。 -
グローバルサービスチーム
Liferayの担当者に連絡して、グローバルサービスチームに参加してください。