(Sitecore 6.4->6.6 を使用していると仮定します)
すべての場合と同様に..場合によって異なります..Sitecore はすべての Sitecore アイテムのインデックスをシステム インデックスに保持しています。それを使用してください。特定のテンプレートに基づいている、インデックスが作成されている、またはインデックスが作成されているチェックボックス フィールドが必要な場合など、より特化した、または制限されたアイテムのリストが必要になる場合があります (システムはデフォルトでtext
フィールドのみをインデックス化するため)。
独自の検索インデックスを設定するのは非常に簡単です.ただし、web.config をいじる必要があります (.include
ファイルとして追加することをお勧めします)。
コレクションの名前とそれが入るフォルダーを定義する<index>
独自の新しいノードを作成します。(インストールid
のディレクトリでディレクトリを探すことで、その動作を確認できます。/data/indexes
.. 次に、クローラーにどのデータベースを参照するか (master
未公開のコンテンツをインデックスに登録したい場合やweb
、公開されたコンテンツを検索する場合)、どこから検索を開始するか (この例では、ニュース セクションのみをインデックスに登録しています) を指定できます。できるかどうかを判断できます (そうでない場合はtag
、テキスト .. リッチテキスト / 複数行テキスト / テキストなどとして理解できるフィールドのみにインデックスを付けます)。boost
IndexAllFields
.. 最後に、含めるまたは除外するテンプレートの種類をインデクサーに伝えることができます。
インデクサーの仕組みは、サイトコア内のアイテム イベントをサブスクライブすることです。そのため、アイテムが変更、移動、または削除されるたびに、インデックスが自動的に更新されます。明らかに、データベースにインデックスを付ける場合はweb
、アイテムが公開されている必要があります。
クエリ構文とインデックス作成の詳細については、SDN のこちらを参照してください。
検索構文と API は 6.4/6.5 で大幅に改善されていますが、さらにキックを追加したい場合は、同僚の Alex Shyba のAdvanced Database Crawlerもチェックする価値があります。
これが役立つことを願っています:D