---
title: "検索結果をハイライトするためのSolrの使用"
slug: "using-solr-to-highlight-search-results"
abstract: "この機能を使って、クエリ応答に一致する文書の断片を含めることができます"
---
# 検索結果をハイライトするためのSolrの使用

> !注このトピックはSitecore 9.0以降にも適用されます。

Solrにはハイライト機能があります。これは、クエリ応答のクエリに一致する文書の断片をSolrが返すことを意味します。Solrはこれらの断片を、応答の特別なセクションであるhighlightingセクションに含めます。Solrには、これらの断片(またはスニペット)をどのように提示するかを判断するためのフォーマットの手がかりも含まれています

Solrのドキュメントには詳細が記載されています。

## ソルル構成

Solrでハイライトを有効にするために設定は必要ありません。

## 例

この例は、SitecoreコードのSolrハイライト機能の使い方を示しています:

protected void OnClick(object sender, EventArgs e)
 {
 var index = ContentSearchManager.GetIndex("sitecore\_master\_index");
 var highlightField = "\_name";
 using (var context = index.CreateSearchContext())
 {
 var results = context.Query<SearchResultItem>(string.Format("\_name:{0}", this.txtName.Text), new QueryOptions()
 {
 Highlight = new HighlightingParameters
 {
 Fields = new
 {
 highlightField
 },
 BeforeTerm = "<span class='highlight'>",
 AfterTerm = "</span>"
 }
 });
 if (results != null)
 {
 foreach (var result in results)
 {
 resultstring.Format("highlight{0}", highlightField) = string.Join(", ", results.Highlightsresult"\_uniqueid".ToString().SnippetshighlightField.ToArray());
 }
 }
 this.rptResults.DataSource = results;
 this.rptResults.DataBind();
 }
 }

## ベストプラクティス

ハイライトに使うパラメータを指定するのがベストプラクティスです。結果を得るにはh1とh1.flパラメータを設定するだけで十分です。

これらは最も一般的に使われるパラメータです。

パラメータ

デフォルト

概要

HL

偽り

このパラメータを使ってハイライトを有効または無効にしてください。

HL.メソッド

オリジナル

使用するためのハイライト実装。許容値は以下の通りです: unified、 original、 fastVector 、 postings。

HL.FL

(df=)

ハイライトするフィールドのリストを指定します。これは、Solrがハイライトされたスニペットを生成するべきフィールドのコンマまたはスペース区切りリストを受け入れます。''(アスタリスク)のワイルドカードを使えば*、フィールドの塊をマッチさせることができます。例えば「text\_*」や「*''でハイライト可能なすべてのフィールドでハイライトできます。''を使う場合は*、 hl.requireFieldMatch.