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

検索設定のリファレンス

Liferay DXPの検索は様々な方法で設定できます。 設定スコープの概念を理解すれば、特定の設定画面がどこにあるかがわかるでしょう。

  • 多くの検索設定はシステム範囲に影響を与えます(例:インデックスの再構築処理や検索エンジンコネクタの設定)。
  • 検索チューニングの設定は、仮想インスタンスに影響を与えます。
  • 新しい検索ページの作成は、サイトスコープでの検索に影響します。
  • 検索ウィジェットの設定は、ウィジェットスコープの設定ですが、一部はページスコープの設定と考えることもできます。

そのため、 Configuring Search という用語は、利用可能なすべてのスコープに対応しているため、非常に幅広いものとなっています。 ここでは、どのような検索動作が設定可能か、そして重要なこととして、どこに検索設定オプションがあるのかについて、高いレベルで説明します。

Widget Scoped Searchの設定

ページ上に設置できる検索ウィジェットをご用意しました。 それぞれに設定オプションがあります。

各ウィジェットの設定はそれぞれ異なります。

検索ウィジェット

検索ウィジェットの詳細については、 検索ページとウィジェット を参照してください。

検索結果: 検索結果の表示方法を設定します。 詳細については、 検索結果の表示 をお読みください。

検索バー: 検索キーワードをどのように処理するかの動作を設定します。 詳細については、 検索バーの設定 を参照してください。

検索ファセットFacets: 各ファセットの動作とURLパラメータを設定します。 詳細については、 ファセット を参照してください。

検索オプション: これは特殊なケースで、このウィジェットを構成することで、ページスコープでの動作を定義します。 [検索オプション]ウィジェットをページに追加し、「検索ページ」に2つのブーリアンを定義します。

  • 空の検索を許可する:デフォルトでは、キーワードを入力しなかった場合、検索結果は表示されません。 これを有効にすると、検索バーにキーワードが入力されていない場合、 すべての の結果が返されるようになります。
  • 基本的なファセット選択。デフォルトでは、ファセット数はファセットを選択するたびに再計算されます。 これを有効にすると、ファセットリカウンティングがオフになります。
  • 検索間でファセットの選択を保持する: Liferay DXP 2024.Q2/Portal GA120 以降、新しい検索を実行すると、以前の検索ファセットの選択がクリアされます。 これを有効にすると、新しい検索時にもファセット選択が保持されます。

検索候補:より良いクエリやスペルチェックのクエリを提案します。 詳細については、 提案設定リファレンス を参照してください。

検索インサイト: ユーザーがキーワードを入力したときにバックエンドの検索コードによって構築されるクエリ文字列全体を検査するには、これを検索ページに追加します。 テストや開発にしか使えません。 詳細については、 検索インサイト を参照してください。

カスタムフィルター:検索結果に適用させたいフィルターごとに、ページにウィジェットを追加します。 検索ページのユーザがフィルタを見たり操作したりできるようにするか、フィルタを不可視にしたり、不変にしたりする。 詳細については、 カスタムフィルタウィジェットの使用 を参照してください。

ソート: インデックス内の特定の キーワード フィールドの値に基づいて、ユーザーが検索結果を並べ替えることができます。 例えば、「タイトル」フィールドのアルファベット順に結果を表示します。 デフォルトの順序は、検索エンジンの 「関連性」 の計算によって決定されます。 詳細については、 検索結果の並べ替え を参照してください。

低レベルの検索オプション: 会社インデックス以外のインデックスを対象とした検索に参加するように検索ウィジェットを設定します。 会社インデックスはLiferay DXPアセットがデータのインデックスを作成する場所なので、多くのインストールではこのウィジェットは必要ありません。 詳細については、 低レベル検索オプションの理解 を参照してください。

類似した検索結果: ページに表示されているアセットに類似した検索結果を表示します。 詳細については、 類似結果 を参照してください。

[Liferay Enterprise Search] Elasticsearch モニタリング: Liferay Enterprise Search のサブスクライバーは、Liferay DXP ページに配置されたウィジェット内で Elastic の Kibana モニタリング ツールにアクセスできます。 詳細については、 Elasticsearch の監視 を参照してください。

サイトスコープ検索の設定

サイトスコープ構成の厳密な定義によれば、検索にはそのようなものはありません。 ただし、 検索ページ はサイト固有の検索行動に影響を与えます。 通常、検索ページには、特定のサイト内のすべてのコンテンツを検索するように設定された検索ウィジェットが含まれています。

検索の範囲を設定します。

検索ウィジェットを使用する際には、いくつかの重要な設定上の注意点があります。

ヘッダー検索バー(デフォルトテーマに埋め込まれた検索バー)が検索バーウィジェットを使用する場合、その構成では常に 宛先ページ を設定する必要があります。 検索先のページ は、検索ウィジェットを含む通常のページです。 検索ウィジェットを持つページは、サイト全体でいくつでも持つことができます。

検索バーウィジェットはインスタンス化が可能なので、1つのページに複数の検索バーウィジェットを設定することができます。 すべての検索バーのインスタンスは、サイト内の検索ページを指していないと効果がありません。

重要

Liferayのデフォルトテーマのように、検索先のページがテーマ埋め込み型のヘッダー検索バーに加えて、検索バーのウィジェットインスタンスを持っている場合、ヘッダー検索バーの設定がページのウィジェットインスタンスよりも優先されます。

逆に、他のページのSearch Barウィジェットインスタンスからの検索では、ヘッダのSearch Barの設定と異なっていても、その設定が尊重されます。

詳細については、 検索バーの設定 を参照してください。

インスタンススコープの検索構成

検索には、 インスタンス設定 パネルにインスタンススコープのエントリがありません。 ただし、多くの検索ウィジェットには、インスタンス全体のデフォルトの ウィジェットテンプレート を設定するエントリがあります。 テンプレートが定義されているサイトID(多くの場合、これはグローバルサイトのIDで、サイト設定パネルにあります)と、サイトメニュー→デザイン→ウィジェットテンプレートにあるウィジェットテンプレートIDを入力するだけです。

検索に関するインスタンススコープの設定は、グローバルメニュー → アプリケーション → 検索チューニングのエントリのみです。

検索結果のランキング。 特定のエイリアスの検索結果を隠したり、固定したり、追加したりして、検索結果を手動でカスタマイズできます。 詳細については、 結果ランキング を参照してください。

同義語。 同義語の検索語がマッチし、検索語との完全一致のようにスコアリングされるように、同義語セットを作成します。 詳細については、 同義語セット を参照してください。

システムスコープ検索の設定

システムスコープの検索設定は主に システム設定 にあります。

  1. グローバルメニューで、 コントロールパネル設定システム設定 に移動します。

  2. [プラットフォーム]セクションの下にある[検索] カテゴリーをクリックします。

    または、 を検索し、 を検索してください。

システム設定には、検索のための多数のシステム・スコープ・エントリがあります。

システム設定は、 OSGi 設定ファイル を介して構成することもできます。 ファイル名はここに記載されています。

デフォルト・キーワードクエリ

設定ファイル: com.liferay.portal.search.configuration.DeltKeywordQueryConfiguration.config・・・。

デフォルト・キーワードクエリエントリには1つの設定があります。

disabledEntryClassNamesとなります。 DefaultKeywordQueryContributor のコードは、キーワード検索クエリに descriptionuserNametitle フィールドを自動的に追加します。 エントリークラス名 DefaultKeywordQueryContributor を無視するように指定します。

デフォルト検索結果パーミッションフィルター

設定ファイル: com.liferay.portal.search.configuration.DeltsercheantReversPermissionFilterConfiguration.config

デフォルト検索結果パーミッションフィルターエントリでは、 ポストフィルタリングパーミッションチェック (検索インデックスから結果が返された後に行われるデータベースパーミッションチェック)の設定が可能です。 これらの設定の詳細については、 最終権限チェック をお読みください。

  • permissionFilteredSearchResultAccurateCountThreshold: 正確なカウントのために permissions-filter する検索結果の最小数を指定します。 このしきい値までの結果は常に権限によるフィルタリングが行われます。このしきい値を超える結果については、概算カウントが使用される場合があります。 しきい値を高くすると、カウントの精度は向上しますが、パフォーマンスは低下します。

  • permissionFilteringTimeLimit: 権限フィルタリングに許可される時間をミリ秒単位で設定します。 権限フィルタリングに到達すると、現在のバッチの処理が完了し、保留中のバッチはすべて破棄されます。 デフォルト値 0 は制限なしを示します。

  • searchQueryResultWindowLimit: 各権限チェック要求の最大バッチサイズを設定します。ページネーションの深さにも影響されます。 この値は、Elasticsearch 設定の Max Result Window 設定を超えてはなりません。

インデックス・ステータス・マネージャー

設定ファイル: com.liferay.portal.search.configuration.configです。

ステータス マネージャーをインデックスするエントリーの設定は1つです。

indexReadOnly:これを有効にすると、すべてのインデックス操作と検索エンジンへの書き込みが中断されます。 検索では、すでにインデックスされている文書のみが返されます。 これは大容量データのインポートを高速化するのに役立ちますが、インポートが完了したら無効にして、完全な再インデックスを実行する必要があります。

インデックス書き込みヘルパー

設定ファイル: com.liferay.portal.search.configuration.configIndexWriterHelperConfiguration.config

インデックスライターヘルパーエントリには、1つのエントリが含まれています。

indexCommitImmediatelytrue (デフォルト)の場合、書き込みリクエストのたびにサーチエンジンがインデックスリーダーを更新し、トランザクションをディスクに流す可能性があります。 これは、検索エンジンのパフォーマンスに悪影響を与える可能性があります。 デフォルトの動作は、個々のアセットへのインデックス書き込み(例:blog の追加、blog の更新)については直ちにコミットしますが、一括したインデックス書き込み操作(例:すべてのユーザーのインデックス化、すべてのフォームエントリのインデックス化)については、すべてのエントリが検索エンジンに送信されるまでコミットを遅らせます。 この設定をfalseにすると、個々のインデックス操作の動作が変化し、Asset Publisherなどのアプリケーションで、新しく追加されたコンテンツを表示する際にレスポンスが遅れることがあります。 詳細については、 Elasticsearch のドキュメント を参照してください。

インデクサー登録

Liferay 7.4 Update/GA31以降では、システム設定UIにインデクサーレジストリの設定項目が表示されません。 .config ファイルで設定する必要があります。

設定ファイル: com.liferay.portal.search.configuration.indexerRegistryConfiguration.configです。

インデックス要求のバッファリングを設定する。

バッファリング: インデックス作成リクエストのバッファリングを有効にする(デフォルト)か無効にします。 バッファリングを無効にすることは推奨されません。Elasticsearchへのリクエスト数が増加し、データベースがロールバックされた際にインデックスの変更がロールバックされないためです。

bufferedExecutionMode: 管理者が IndexerRequestBufferExecutorを選択し、 IndexerRequestの実行に使用できるようにします。 エクゼキュータの実装は1つだけです(DEFAULT)。 新しい IndexerRequestBufferExecutor の実装がデプロイされると、必要なプロパティの1つとして、 buffered.execution.modeが指定されます。 この値は、 DEFAULTの代わりに使用することができます。

maximumBufferSize:バッファリングが有効になっている場合は、追加のインデックス要求がすぐに実行されるように最大バッファサイズを設定します。

minimumBufferAvailabilityPercentage: バッファの容量が指定されたパーセント分しか残っていない場合、バッファ内の既存のリクエストが一括して実行され、バッファから削除されます。

インデックス・クエリ・プロセッサー

設定ファイル: com.liferay.portal.search.configuration.config

このエントリには、繰り返し可能なプロパティが 1 つあります ( OSGi 設定ファイル を介して定義する場合は、配列構文を使用してください)。

fieldNamePatterns:ここで設定したパターンに一致する名前のフィールドは、分析されていないキーワードフィールドとして扱われます。 スコアリングされたフルテキストクエリの代わりに、スコアリングされていないワイルドカードクエリによってマッチングが行われます。 これはリソースを消費する操作で、インデックスが大きくなると検索エンジンのパフォーマンスが低下します。 部分文字列のマッチングには、 ngramトークナイザー を利用する方が通常はパフォーマンスが優れています。

インデックスの再構築

設定ファイル: com.liferay.portal.search.configuration.configです。

defaultReindexExecutionMode: Liferay コンテンツの再インデックスのデフォルト モードを設定します。 フル(デフォルト)、同時実行、または同期から選択してください。 詳細については、 再インデックスモード を参照してください。

indexingBatchSizes: バッチインデックスをサポートするモデルタイプの場合、配列を使用してバッチごとにインデックス付けされるドキュメント数を設定します。 未定義の場合、デフォルト値は 10,000です。 DLFileEntry は、初期設定では 500 に設定されています。 ドキュメントが大きいモデルの場合、この値を小さくすると安定性が向上し、再インデックス操作中に リクエストエンティティが大きすぎます のようなエラーが解決される可能性があります。 より大きなタイプのバッチ インデックス サイズを小さくすることは、可能であれば避けるべき http.max_content_length 設定を増やすよりも良いです。 Elasticsearch のトラブルシューティング: よくある問題 を参照してください。 設定で使用できるモデルタイプのクラス名を見つけるには、 コントロール パネル設定検索インデックス アクション に移動します。 リストされている型には、設定で使用できるクラス名が含まれています (例: Account Entrycom.liferay.account.model.AccountEntry です)。

重要

ウェブコンテンツ記事のインデックス作成バッチサイズを設定するには、指定するモデルはウェブコンテンツの設定によって異なります。 システム設定 → コンテンツ & データ → ウェブコンテンツ → ウェブコンテンツ(仮想インスタンススコープ)でindexAllArticleVersionsEnabledtrueの場合、com.liferay.journal.model.JournalArticle=[size] を設定する必要があります。 無効になっている場合は、 com.liferay.journal.model.JournalArticleResource=[size] を使用してください。

エンジンヘルパー

設定ファイル: com.liferay.portal.search.configuration.config

このエントリには、繰り返し可能なプロパティが 1 つあります ( OSGi 設定ファイル を介して定義する場合は、配列構文を使用してください)。

excludedEntryClassNames:検索アプリケーション用に構築されたキャッチオールクエリで、アセットタイプを検索対象から除外します。 例えば、ユーザーと組織 アプリケーションから検索できるように、組織アセットのフィールドにインデックスを付ける必要がありますが、検索アプリケーションでは検索できません。 したがって、組織は、 excludedEntryClassNamesに追加されます。

権限チェッカー

設定ファイル: com.liferay.portal.search.configuration.config

このエントリーは、Liferay DXP 7.3では1つの設定オプションがあります。

permissionTermsLimit: このレベルの許可チェックが中止されるまでに、検索クエリに追加される許可検索句の数を制限します。 権限チェックは、 デフォルトの検索結果権限フィルタ セクションで説明されている最終的な権限フィルタリングのみに依存します。

タイトルフィールドクエリビルダー

設定ファイル: com.liferay.portal.search.configuration.configTitleFieldQueryBuilderConfiguration.config

ドキュメントの「タイトル」フィールドにマッチした場合の検索の応答方法を設定します。

exactMatchBoost: 検索されたキーワードが、文書の タイトル フィールドと完全に一致した場合に、さらにブーストをかけます。

maxExpansions: 検索されたキーワードに、 title フィールドをフレーズのプレフィックスとしてマッチさせたときに、返すドキュメントの数を制限します。 詳細については、Elasticsearch の マッチフレーズクエリのドキュメント を参照してください。

クラスター横断レプリケーション

このエントリは、Liferay Enterprise Searchのサブスクリプションで利用可能なクラスター横断レプリケーションモジュールを導入した場合にのみ表示されます。 これらの構成プロパティについては、専用の クロスクラスタレプリケーション ドキュメントで説明されています。

Elasticsearch の監視

設定ファイル: com.liferay.portal.search.elasticsearch.monitoring.web.internal.configuration.config

Liferay Enterprise Searchのサブスクリプションで利用可能なLiferay Enterprise Search Monitoringモジュールを導入している場合、Elasticsearch Monitoringの構成を使用できます。 これらの設定プロパティについては、専用の Elasticsearch の監視 ドキュメントで説明されています。

Elasticsearch 7/8

重要

Liferay DXP 2026.Q1より前のバージョンの場合:

  • Elasticsearch 7 のシステム設定エントリと対応する設定ファイルは、Elasticsearch 7 または 8 への接続を設定するために使用されます。

  • 設定ファイルでは、Elasticsearch 8 に接続する場合でも、名前に elasticsearch7 を使用します。

設定ファイル: com.liferay.portal.search.elasticsearch8.configuration.ElasticsearchConfiguration.config

LiferayとElasticsearchの接続を設定する. これらのプロパティの詳細については、 コネクタの設定 を参照してください。

Elasticsearch接続

重要

Liferay DXP 2026.Q1 より前のバージョンでは、Elasticsearch 8 に接続する場合でも、設定ファイルでは elasticsearch7 が使用されます。

設定ファイル: com.liferay.portal.search.elasticsearch8.configuration.ElasticsearchConnectionConfiguration-[connectionId].config

Liferay DXP 7.3以降(およびすべての四半期リリース)は、複数のElasticsearchクラスターに接続できます。 接続はElasticsearch接続エントリで定義されます。 この機能は、低レベル検索オプションおよび検索結果ウィジェットと組み合わせて使用することで、Elasticsearchクラスタを使用するサードパーティシステムからの結果を表示できます。 例については、 クロスクラスタレプリケーション のドキュメントを参照してください。

Learning to Rank

設定ファイル: com.liferay.portal.search.learning.to.rank.configuration.LearningToRankConfiguration.configとなっています。

Liferay Enterprise Searchのサブスクリプションで利用可能なLiferay Enterprise Search Learning to Rankモジュールを導入している場合、Learning to Rank構成を使用できます。 これらの設定プロパティについては、専用の Learning to Rank ドキュメントで説明されています。

ウェブ検索

設定ファイル: com.liferay.portal.search.web.internal.configuration.searchWebConfiguration.configです。

このエントリーには1つのプロパティが含まれています。

classicSearchPortletInFrontPage: 新しい検索ウィジェットを使用していたデフォルトの検索エクスペリエンスを、過去のリリースで標準装備されていた非推奨のクラシック検索ポートレットに戻します。

同義語

設定ファイル: com.liferay.portal.search.tuning.synonyms.web.internal.configuration.configです。

このエントリには、繰り返し可能なプロパティが 1 つあります ( OSGi 設定ファイル を介して定義する場合は、配列構文を使用してください)。

synyonymFilterNames: 適用する同義語フィルター名を設定します。 これらのフィルターはElasticsearch Index Settingsで定義する必要があります。 新しい同義語言語フィルターの作成 を参照してください。

検索管理

コントロール パネル設定検索 には、接続、インデックス アクション、フィールド マッピングの 3 つの管理 UI があります。

詳細については、専用の 検索管理とチューニング ドキュメントを参照してください。

つながり

検索エンジンへの接続情報が表示されます。 例えば、

  • 検索エンジンベンダー:Elasticsearch
  • クライアントのバージョン:7.16.3
  • 有効な接続:1
  • 稼働状態:緑
  • 接続ID: _REMOTE_
  • 接続タイプ:読み取り/書き込み
  • クラスター名:LiferayElasticsearchCluster
  • ノード:1
  • ノード名:lr-es
  • ノードバージョン:7.17.21

インデックス管理

インデックス操作で、以下のいずれかのレベルで再インデックスを実行します。

  • すべてのインデックス可能アセット
  • 個々のインデックス可能アセット
  • すべてのスペルチェック用インデックス

フィールドマッピング

ポータルプロパティ

ポータルプロパティは、システムにも適用されます。 Lucene Search ポータルプロパティは、低レベルの検索動作を設定します。 特に、ポータル プロパティ index.search.limit は、Liferay DXP が検索クエリごとに要求する最大結果数を設定し、Elasticsearch 設定 Max Result Window と一致する必要があります。 他の物件とその説明を確認し、ご自身の検索条件に合致するかどうかを判断してください。