SXAインデックスの設定
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SXAは特定の言語やサイトごとにインデックスを定義できます。これは、インデックスを小さく保ちパフォーマンスを向上させたいときにデータを分離したいときに便利です。
インデックスを追加
インデックスを追加すると:
-
/sitecore/content/Tenant/Site/Settings/Site Grouping/Siteへナビゲート。
-
インデックス セクション で、サイトのインデックス仕様を入力します。必ずデータベースの後にスラッシュで始めてください。その後、言語を指定するか、すべての言語を含めるために*を使うことができます。
例えば、サイト固有の索引を作成したり、英語とスペイン語を分けたりすることができます:

!注SXA検索インデックスを特定の言語の項目を含めたい場合、クローラー用の言語パラメータを追加する必要があります:
マスター /サイトコア EN
-
検索プロバイダーの設定ファイルにアクセスして、作成したインデックスを追加してください。例えば、Solrを使っている場合は、C:\inetpub\wwwroot\Site\Website\App_Config\Include\Z.Foundation.Overrides\Sitecore.XA.Foundation.Search.Solrに行きインデックスを追加します。
デフォルトのクローラーパスは
- そのパスのアイテムのみがインデックスされます。
- カスタムインデックスにはテンプレートは含まれません。
インデックスにテンプレートが欠けていると、フィールド型の解決ロジックに影響を与える可能性があります。場合によってはフィールド型が見つからず、検索やフィルタリング時に問題が発生することがあります。これを解決するには、設定ファイル内のすべてのカスタムフィールドを手動で定義し、Sitecoreが使用するタイプ(文字列、整数、テキストなど)を把握できるようにします。

!注Sitecoreのインデックス作成に関する一般的な情報については、プラットフォームのドキュメントをご参照ください。
カスタムインデックスの設定
SXA固有のフィールドはすべてのインデックスに自動的に含まれるわけではありません。カスタムインデックスを使用しつつSXAの検索機能も使いたい場合は、SXA固有のフィールドを含めるようにカスタムインデックスを設定する必要があります。
SXA固有のフィールドをインデックスに追加するには:
-
インデックス設定で、カスタムインデックスを定義するindexノードを見つけてください。
-
documentOptionsノード内で、次のコードを追加します:
Sitecore.XA.Foundation.Search.ComputedFields.Site, Sitecore.XA.Foundation.Search Sitecore.XA.Foundation.Search.ComputedFields.HasLayout, Sitecore.XA.Foundation.Search Sitecore.XA.Foundation.Search.ComputedFields.Searchable, Sitecore.XA.Foundation.Search Sitecore.XA.Foundation.Search.ComputedFields.ParentName, Sitecore.XA.Foundation.Search Sitecore.XA.Foundation.Search.ComputedFields.Level, Sitecore.XA.Foundation.Search Sitecore.XA.Foundation.Search.ComputedFields.ParentTemplate, Sitecore.XA.Foundation.Search -
変更を保存してインデックスを再構築します。