
SolrQuery::addHighlightField를 사용하여 하이라이트 필드를 추가할 때, 하이라이트 필드의 이름과 태그 이름을 지정하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$query = new SolrQuery();
$query->addHighlightField('title', 'highlight');
위 코드에서 'title'은 하이라이트 필드의 이름이고, 'highlight'은 태그 이름입니다.
하이라이트 필드에 대한 설정은 다음과 같습니다.
#hostingforum.kr
php
$query->setHighlightMaxDocToHighlight(10);
$query->setHighlightRequireFieldMatch(true);
$query->setHighlightSnippetsSize(5);
$query->setHighlightQuery('*:*');
위 코드에서 setHighlightMaxDocToHighlight() 메서드는 검색 결과에서 하이라이트를 보여줄 문서의 최대 수를 지정합니다. setHighlightRequireFieldMatch() 메서드는 하이라이트 필드와 검색 쿼리가 일치해야 하도록 설정합니다. setHighlightSnippetsSize() 메서드는 하이라이트된 텍스트의 최대 길이를 지정합니다. setHighlightQuery() 메서드는 하이라이트할 쿼리를 지정합니다.
예를 들어, 하이라이트 필드의 태그 이름을 'highlight'로 지정하고, 하이라이트 필드의 이름을 'title'로 지정하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$query = new SolrQuery();
$query->addHighlightField('title', 'highlight');
$query->setHighlightMaxDocToHighlight(10);
$query->setHighlightRequireFieldMatch(true);
$query->setHighlightSnippetsSize(5);
$query->setHighlightQuery('*:*');
위 코드에서 'title'은 하이라이트 필드의 이름이고, 'highlight'은 태그 이름입니다.
2025-03-14 18:46