1

ポータルで言語を変更する際に問題があります。liferay 6.0.5 を使用しています。ポータルのデフォルト言語はフランス語で、英語に翻訳されたページがいくつかあります。portal_normal.vm のページを次のように設定しました。

# set ($ pages_EN = ["/ services", "/ equipment"])
# if ($ language_id == 'en_GB')
#   foreach ($ mypage pages_EN in $)
#     if ($ == $ mypage layout.getFriendlyURL ())
#       set ($ = $ rtlCssURL themeDisplay.getTheme (). getContextPath () + $themeDisplay.getTheme (). getCssPath () + "/ custom_en.css")
#       css ($ rtlCssURL)
#     end
#   end
# end

portal_normal.vm でポートレット言語に参加して、うまく機能する言語を変更しました。

やりたいこと: EN ページで、EN に翻訳されていないページをクリックしたときに、言語を変更して (en -> fr)、クリックしたリンクにリダイレクトしたい。何か案は?

4

1 に答える 1

1

Liferay には「翻訳されたページ」のようなものがないため、実際には意味のある方法で回答するのは困難です: ページの「すべての記事」を別の言語に翻訳したかもしれませんが、どのような動作になりますか? 3 つの記事のうち 2 つが翻訳されたときは?

私が想像できる機能は、Liferay ですぐに使用できるようになります。URL がhttp://example.com/homehttp://example.com/fr/home、およびhttp://example.com /en/home、最後のもの (言語コード付き) は、要求された言語が利用可能な場合に表示されます。最初の URL は、利用可能で、ユーザーの要件に最適な言語を表示します: 優先言語があることを示すことによって (ログインし、プロファイルでデフォルト言語を設定することによって)、または browser-content-negotiation (ブラウザで優先言語を設定できます.これはウェブサーバーに転送されます)

ここであなたが話しているとは思えないもう 1 つのオプションは、翻訳されたページ タイトルについて話しているということですが、それらも上記の動作によってカバーされます。

シナリオがそれと異なる場合は、質問を言い換えてください。あなたが求めているものを想像できる限り、リダイレクトの要件は考えられません。言語は、可用性と好みに基づいて自動的に選択されます。

于 2012-09-18T15:35:34.790 に答える