Search Blueprints
ご覧のページは、お客様の利便性のために一部機械翻訳されています。また、ドキュメントは頻繁に更新が加えられており、翻訳は未完成の部分が含まれることをご了承ください。最新情報は都度公開されておりますため、必ず英語版をご参照ください。翻訳に問題がある場合は、 こちら までご連絡ください。

検索ブループリントのコレクション

検索ブループリントを作成すると、それを コレクションプロバイダー として有効にして、その結果を表示できます。 ブループリントのクエリと構成に一致するアセットがコレクションに追加されます。

検索設計図は、収集プロバイダーとして登録されています。

2025年第3四半期以降、ブループリントで定義する検索可能な型によって、コレクション表示フラグメント内でマッピングできるフィールドが決まります。 特定のメタデータにアクセスするには、ブループリントのソースを定義する必要があります。

  • 単一コンテンツタイプ: 特定のタイプ (オブジェクトや特定の Web コンテンツ構造など) を選択して、その固有のカスタム フィールドをマッピングします。
  • 複数またはすべてのタイプ: 複数のタイプを選択した場合、すべてのアセットに共通する基本フィールド (タイトル、作成日など) をマッピングできます。
  • 複数のサブタイプを持つ単一のタイプ: 複数のサブタイプを持つ親タイプ (たとえば、複数の異なる Web コンテンツ構造) を選択した場合、親タイプに共通するフィールドのみが使用可能になります。
重要

DXP 2025.Q3 より前は、コレクション プロバイダーは Liferay の Asset Framework に登録されたコンテンツのみを返していました。 基本的なアセット入力フィールド)をフラグメントに<0>マッピングすることはできましたが、コンテンツのタイプやサブタイプ固有のフィールド(ドキュメント、オブジェクト、ウェブコンテンツのフィールドなど)は使用できませんでした。

検索ブループリントをコレクションプロバイダーとして使用する

検索ブループリントのコレクションプロバイダーを使用するには、

  1. Liferay DXP 2026.Q1より前のバージョンでは、LPS-129412のリリース機能フラグを有効にしてください。

  2. ブループリントを作成します。 Liferay DXP 2025.Q3+ では、 コレクション プロバイダーとして有効にする スイッチを切り替える必要があります。

    この設定は、設計図の設定タブからいつでも切り替えることができます。 詳細については、 Blueprint をコレクション プロバイダーとして有効にする を参照してください。

  3. ブループリントの「クエリビルダー」タブで検索可能な型を定義します。

    ブループリントのクエリビルダーで、タイプとサブタイプを選択できます。

  4. 設計図を保存してください。

  5. コンテンツページにコレクション表示フラグメントを追加し、「コレクションプロバイダー」フィールドでブループリントのコレクションプロバイダーを選択します。

    コレクションページを追加する際にも、コレクションプロバイダーを使用できます。

  6. ブループリントのレスポンスからフラグメントにフィールドをマッピングします。

    ブループリントのレスポンスからフラグメントにフィールドをマッピングします。

他のコレクションと同様に、 コレクションフィルター を使用して、ブループリント駆動コレクションをキーワードまたはカテゴリでフィルタリングできます。

例:カスタム文書タイプからのファイルエントリの表示

ドキュメントとメディアファイルを作成し、コレクション表示フラグメントを使用してコンテンツページにイベントを表示するようにブループリントを設定します。

  1. Liferay DXP 2026.Q1より前のバージョンでは、LPS-129412のリリース機能フラグを有効にしてください。

  2. 製品メニューコンテンツ & データドキュメントとメディアドキュメントの種類 に移動します。

  3. 新規 をクリックし、 猫の写真 という名前のドキュメントタイプを作成し、 猫の名前 というラベルのテキストフィールドを作成します。

  4. Dog Photos という名前の 2 番目のドキュメント タイプを作成し、 Dog's Name というラベルの付いたテキスト フィールドを作成します。

    2種類の文書を作成する。

    これらの文書タイプのカスタムフィールドを設計図コレクションの表示で使用するには、設計図の検索対象タイプとして、単一のタイプ(文書)と単一のサブタイプ(例:猫の写真)を選択する必要があります。 2つ目のサブタイプ(例:犬の写真)を選択した場合、ドキュメントタイプの共有フィールドのみが利用可能になります。

  5. 新しいドキュメントタイプを使用してファイルをアップロードするには、 製品メニューコンテンツ & データドキュメントとメディア に移動します。

  6. 新規 をクリックし、タイプごとにエントリを 1 つ作成します。

    サンプル値は自由にカスタマイズしてください。

    • タイプ: 猫の写真
      • タイトル: プリシラがドラマチックにくつろいでいる
      • 猫の名前: プリシラ・テンダーポーズ
      • ファイル: 写真をアップロード
    • タイプ: 犬の写真
      • タイトル: ソファの上のフーフィー
      • 犬の名前: フーフィー・ヘルナンデス
      • ファイル: 写真をアップロード

    文書の種類ごとに項目を追加してください。

  7. グローバルメニュー (Global Menu) → アプリケーションブループリント に移動します。

  8. Pet Photos Blueprint というタイトルの新しいブループリントを作成し、 Enable as a Collection Provider トグルをアクティブに切り替えます。

  9. クエリ ビルダー タブのソースで、 選択されたタイプ オプションを選択します。

  10. アセットタイプとして ドキュメント を選択し、サブタイプとして 犬の写真猫の写真 を選択します。

    両方のカスタム文書タイプを文書のサブタイプとして選択します。

  11. 設計図を保存してください。

  12. Pets という名前の新しいコンテンツ ページを作成し、コレクション ディスプレイ フラグメントを追加します。

  13. ペット写真ブループリント コレクションプロバイダーを選択してください。

    設計図収集サービス提供元がこのページに表示されました。

  14. コレクションのドロップゾーンに 見出し フラグメントを追加し、テキストをクリックしてマッピングサイドバーを開きます。 フラグメントをタイトルフィールドにマッピングします。

    複数のサブタイプが選択されているため、「猫の名前」などのカスタムフィールドは非表示になっています。

    タイトルをフラグメントにマッピングします。

  15. Image フラグメントを追加し、それをドキュメントのプレビュー画像フィールドにマッピングします。

    画像フラグメントを追加し、それをドキュメントのプレビュー画像フィールドにマッピングします。

  16. ページを公開すると、コレクションには追加した両方のペットが表示されます。

    ペットの写真をコレクションに追加しましょう。

コレクション表示でカスタム文書タイプのフィールドを使用するには、ブループリントを編集し、単一のタイプ/サブタイプのペア(例:文書 → 犬の写真)以外すべてを削除する必要があります。 次に、コレクションの表示を再構成し(場合によっては最初からやり直す必要があるかもしれません)、カスタムフィールドがマッピングに使用できるようになっていることを確認してください。

単一サブタイプのフィールドは、コレクション表示にマッピングできます。

例:未来のイベントを表示する

カレンダーイベントを作成し、将来発生するイベントのみを返すようにブループリントを設定します。 コレクション表示フラグメントを使用して、コンテンツページにイベントを表示します。

  1. Liferay DXP 2026.Q1より前のバージョンでは、LPS-129412のリリース機能フラグを有効にしてください。

  2. カレンダーウィジェットをページに追加し、3つのイベントを作成します。

    • 過去のイベント:終了時刻を現在時刻から5~15分後に設定してください。
    • 今後のイベント1:開始時刻を明日に設定する。
    • 今後のイベント2:開始時間を来週に設定する。

    カレンダーウィジェットに3つのイベントが追加されました。

  3. グローバルメニュー (Global Menu) → アプリケーションブループリント に移動します。

  4. 「要素」タブで、 新規 をクリックし、 結果を将来のイベントに制限 という名前の新しいカスタム要素を次の JSON を使用して作成します。

    {
       "description_i18n": {
          "en_US": "Limit results to only future events, using the endTime field."
       },
       "elementDefinition": {
          "category": "filter",
          "configuration": {
             "queryConfiguration": {
                "queryEntries": [
                   {
                      "clauses": [
                         {
                            "context": "query",
                            "occur": "filter",
                            "query": {
                               "range": {
                                  "endTime": {
                                     "gt": "${time.current_date|date_format=timestamp}"
                                  }
                               }
                            }
                         }
                      ]
                   }
                ]
             }
          },
          "icon": "filter",
          "uiConfiguration": {}
       },
       "title_i18n": {
          "en_US": "Limit Results to Future Events."
       },
       "type": 0
    }
    
  5. [保存]をクリックします。

  6. ブループリント タブで、 Future Calendar Events Provider というタイトルの新しいブループリントを作成し、 Enable as a Collection Provide トグルをアクティブに切り替えます。

  7. クエリ ビルダー タブのソースで、 選択されたタイプ を選択し、 カレンダー イベント をアセット タイプとして選択します。

  8. クエリ要素タブで、 結果を将来のイベントに制限する 要素を追加します。

    「クエリ要素」タブに「結果を将来のイベントに限定する」要素を追加します。

  9. 設計図を保存してください。

  10. Upcoming Events という名前の新しいコンテンツ ページを作成し、コレクション ディスプレイ フラグメントを追加します。

  11. 将来のカレンダーイベントプロバイダー コレクションプロバイダーを選択します。

    コレクション表示フラグメントを設定して、箇条書きリストを表示するようにします。

  12. コレクションのドロップゾーンに 見出し フラグメントを追加し、それをタイトル フィールドにマッピングします。

  13. ページを公開する。

    endTimeが現在の日付より大きいイベントのみがコレクションに表示されます。

コレクション表示フラグメントには、将来のイベントのみが表示されます。

ブループリントを活用して結果を動的に取得し、フラグメントツールボックスの利点を活かしてページをレイアウトしましょう。