ThemeDisplay情報へのアクセス

LiferayグローバルJavaScriptオブジェクトは、便利なメソッド、オブジェクト、およびプロパティを公開しています。それぞれには豊富な情報が含まれており、そのうちの1つがThemeDisplayです。Liferay DXPでのJava開発の経験がある場合は、ThemeDisplayに精通しているかもしれません。JavaScriptオブジェクトは、ThemeDisplay Javaクラスと同じ情報を公開しています。ポータルインスタンス、現在のユーザー、ユーザーの言語、ユーザーがサインインしているかまたは偽装されているか、テーマのリソースへのファイルパスなど、アプリケーションで使用できる貴重な情報にアクセスできます。

Liferayグローバルオブジェクトは、実行時にLiferay DXPで自動的に使用可能になります。 ThemeDisplayオブジェクトにアクセスするには、アプリで次のドット表記を使用します。

`Liferay.ThemeDisplay.method-name`

このチュートリアルでは、ID、ファイルパス、およびログイン情報を取得するために最も一般的に使用されるThemeDisplayメソッドの一部について説明します。使用可能なすべてのメソッドの完全なリストは、このチュートリアルの最後にある表に示しています。

IDの取得

以下のメソッドは、現在のユーザーに関連するさまざまなポータル要素を取得します。

getCompanyId会社IDを返します。

getLanguageId:ユーザーの言語IDを返します。

getScopeGroupId:現在のサイトのグループIDを返します。

getUserIdユーザーのIDを返します。

getUserName:ユーザーの名前を返します。

次に、デプロイされたさまざまなエンティティのファイルパスにアクセスする方法を学習します。

ファイルパスの取得

以下のメソッドは、さまざまなテーマリソースのファイルパスを取得します。

getPathImage:ポートレットの画像ディレクトリの相対パスを返します。

getPathJavaScript:ポートレットのJavaScriptソースファイルを含むディレクトリの相対パスを返します。

getPathMain:ポータルインスタンスのメインディレクトリのパスを返します。

getPathThemeImages:現在のテーマの画像ディレクトリのパスを返します。

getPathThemeRoot:現在のテーマのルートディレクトリの相対パスを返します。

次に、現在のユーザーの情報を取得する方法を学習します。

ログイン情報の取得

以下のメソッドは、現在のユーザーがサインインしているか、または偽装されているかを示すブール値を返します。

isImpersonated:現在のユーザーが偽装されている場合、trueを返します。 承認された管理ユーザーは、別のユーザーとして偽装してそのユーザーのアカウントをテストできます。

isSignedIn:ユーザーがポータルにログインしている場合、trueを返します。

以下の設定例は、ユーザーがゲストの場合は標準メッセージで、サインインしている場合はパーソナルグリーティングでユーザーに通知します。これは基本的な例であり、多少侵襲的かもしれませんが、ThemeDisplay APIを使用して各ユーザーに固有のエクスペリエンスを作成する方法を示しています。

if(Liferay.ThemeDisplay.isSignedIn()){
alert('Hello ' + Liferay.ThemeDisplay.getUserName() + '. Welcome Back.')
}
else {
alert('Hello Guest.')
}

Liferay ThemeDisplayメソッド

使用可能なLiferay.ThemeDisplayメソッドの完全なリストを以下の表に示します。

メソッドタイプ説明
getLayoutId数値
getLayoutRelativeURL文字列ページの相対URLを返します
getLayoutURL文字列
getParentLayoutId数値
isControlPanelブール値
isPrivateLayoutブール値
isVirtualLayoutブール値
getBCP47LanguageId数値
getCDNBaseURL文字列コンテンツ配信ネットワーク(CDN)のベースURLを返します。CDNのベースURLがnullの場合は、現在のポータルURLを返します
getCDNDynamicResourcesHost文字列コンテンツ配信ネットワーク(CDN)の動的リソースホストを返します。CDN動的リソースホストがnullの場合は、現在のポータルURLを返します
getCDNHost文字列
getCompanyGroupId数値
getCompanyId数値ポータルインスタンスIDを返します
getDefaultLanguageId数値
getDoAsUserIdEncoded文字列
getLanguageId数値ユーザーの言語IDを返します
getParentGroupId数値
getPathContext文字列
getPathImage文字列ポートレットの画像ディレクトリの相対パスを返します
getPathJavaScript文字列ポートレットのJavaScriptソースファイルを含むディレクトリの相対パスを返します
getPathMain文字列ポータルインスタンスのメインディレクトリのパスを返します
getPathThemeImages文字列現在のテーマの画像ディレクトリのパスを返します
getPathThemeRoot文字列現在のテーマのルートディレクトリの相対パスを返します
getPlid文字列ページの主キーを返します
getPortalURL文字列ポータルインスタンスのベースURLを返します
getScopeGroupId数値スコープ指定された、またはサブスコープ指定されたアクティブグループ(サイトなど)のIDを返します
getScopeGroupIdOrLiveGroupId数値
getSessionId数値セッションIDを返します。セッションIDがアプリケーションで使用できない場合は空の文字列を返します
getSiteGroupId数値
getURLControlPanel文字列
getURLHome文字列
getUserId数値現在の要求が処理されているユーザーのIDを返します
getUserName文字列ユーザーの名前を返します
isAddSessionIdToURLブール値
isFreeformLayoutブール値
isImpersonatedブール値現在のユーザーが偽装されている場合にtrueを返します。承認された管理ユーザーは、別のユーザーとして偽装してそのユーザーのアカウントをテストできます
isSignedInブール値ユーザーがポータルにログインしている場合にtrueを返します
isStateExclusiveブール値
isStateMaximizedブール値
isStatePopUpブール値

関連トピック

Liferay DXP JavaScript Utilities

« Liferay JavaScript APIJavaScriptでのURLの操作 »
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています