Documentation

オブジェクトエントリの表示

7.4以降で利用可能

Liferay Objectでは、既存のDXPフレームワークを使用して、オブジェクトエントリをサイト内に動的に表示できます。 これには、複数のエントリーのコレクション表示や、個々のエントリーの表示ページが含まれます。

オブジェクトが公開されると、Liferayはコレクションプロバイダーを作成します。このコレクションプロバイダーを コレクション表示フラグメント で使用することで、複数のオブジェクトエントリーを表示できます。 また、コレクションをスタイル、フィルター、ページ分割するようフラグメントを設定できます。 また、公開されたオブジェクトはInfo Frameworkに統合されているので、 表示ページテンプレートのコンテンツタイプとして選択することができます。 これを選択すると、オブジェクトがテンプレートのマッピングソースとして設定されるため、フラグメントフィールドをオブジェクトフィールドにマッピングしやすくなり、個々のオブジェクトエントリーの柔軟なページ表示を作成することができます。

さらに、FreeMarkerを使用して、 オブジェクトの情報テンプレート を作成できます。 作成したら、フラグメントフィールドをテンプレートにマップして、コンテンツページと表示ページでエントリーがどのようにレンダリングされるかを決定できます。

注釈

情報テンプレートは、コンテンツ表示フラグメントおよびオブジェクトにマップできるsub-elementsを持つその他のフラグメント(テキスト、リッチテキストなど)で使用できます。

これらの統合により、パーソナライズされたユーザーエクスペリエンスを提供しながら、ユーザーはLiferayのWYSIWYGページ構築機能を活用できます。

オブジェクトのコレクションプロバイダーの使用

オブジェクトを公開した後、以下の手順でコレクション表示フラグメントを使用してオブジェクトのエントリーを表示します。

  1. 新しい コンテンツページ または 表示ページテンプレートを作成します。 または、既存のページを 編集編集ボタン)することから開始します。

    注釈

    また、コレクションプロバイダーを使ってコレクションページを作成することもできます。 詳しくは、コレクションとコレクションページについてをご覧ください。

  2. コレクション表示 フラグメントを [Fragments and Widgets](Fragments and Widgets)サイドバーからページまたはテンプレートにドラッグアンドドロップします。

    コレクション表示フラグメントをページまたはテンプレートにドラッグアンドドロップします。

  3. コレクション表示フラグメント] を選択して設定オプションにアクセスし、[General]タブの [Select Collection]をクリックします。

    フラグメントを選択し、[コレクションを選択]をクリックします。

  4. モーダルウィンドウで、 [Collection Providers] タブをクリックし、 オブジェクトのプロバイダー を選択します。

    [Collection Providers]タブで、オブジェクトのプロバイダーを選択します。

  5. (オプション) どのオブジェクトエントリーを表示するかフィルタリングします。 オブジェクト内の任意のピックリストまたはブール値フィールドでフィルタリングすることができます。

    これを行うには、 [Collection Options] ボタン(Collection Options Button)をクリックし、 [Filter Collection] を選択します。

    [Collection Options]ボタンをクリックして、[Filter Collection]を選択します。

    次に、 目的の フィルター を選択し、 [Apply] をクリックします。

    適用するフィルターを選択します。

目的のプロバイダを選択した後、追加のフラグメントオプションを使用して、オブジェクトエントリーの表示方法を決定します。これには、[List Style] および[Pagination]が含まれます。

フラグメントオプションを使用して、オブジェクトエントリーの表示方法を決定します。

オブジェクトの表示ページテンプレートの作成

  1. サイトメニューSite Menu)を開きます。 [デザイン] → [ページテンプレート] に移動し、 [表示ページテンプレート] タブをクリックします。

  2. 追加 ボタン(Add Button)をクリックし、 空白 のテンプレートを選択します。

    これにより、モーダルウィンドウが開きます。

  3. 名前 を入力し、コンテンツの種類に目的の オブジェクト を選択します。

    名前を入力し、コンテンツの種類に目的のオブジェクトを選択します

  4. 保存] をクリックします。

保存されると、選択されたオブジェクトがテンプレートのマッピングソースとして設定され、テンプレートの編集画面にリダイレクトされます。 ここでは、オブジェクトフィールドにマッピングするフラグメントを使って、個々のオブジェクトエントリーのページ表示を柔軟にデザインすることができます。 詳しくは、 表示ページテンプレートの使用 をご覧ください。

フラグメント要素をオブジェクトフィールドにマップして、個々のエントリーの表示ページに動的に入力します。

オブジェクトの情報テンプレートの作成

  1. サイトメニューSite Menu)を開き、 [デザイン] → [Templates] → [Information Templates] に移動します。

  2. 追加 ボタン(Add Button)をクリックします。

  3. 名前 を入力し、目的の オブジェクト を選択します。

    名前を入力し、目的のオブジェクトを選択します。

  4. 保存] をクリックします。 これにより、テンプレートデザインページにリダイレクトされます。

  5. (オプション)アプリケーションバーのアクションボタン(Actions Button)をクリックし、 [Import Script] を選択して、インポートする.ftlファイルを選択します。 これにより、現在のテンプレートがファイルのFreeMarkerスクリプトに置き換えられます。

    .ftlファイルからスクリプトをインポートします。

  6. FreeMarker を使用してテンプレートをデザインします。

    Elements] サイドパネル(Elements)で、選択したオブジェクトの構造から使用可能なフィールドにアクセスできます。

    オブジェクトの構造で使用可能なフィールドから選択します。

  7. (オプション)[Properties]サイドパネル(Properties)のテンプレートに説明または画像を追加します。

    [Properties]パネルに説明または画像を追加します。

  8. 完了したら、 [Save] をクリックします。

オブジェクトエントリーをフラグメントフィールドにマッピングするときに、テンプレートから選択できるようになりました。

フラグメント要素をマッピングするときにテンプレートを選択します。

ナビゲーションメニューへのエントリの追加

オブジェクトは情報フレームワークと統合されているため、ナビゲーションメニューにオブジェクトのエントリを追加して、素早くアクセスできるようにすることができます。 すべての公開オブジェクトは、メニュー要素で利用可能なソースとして自動的にリストアップされます。 詳しくは、 ナビゲーションメニューのアプリケーションを使う をご覧ください。