사용자 쿼리에 적합한 검색 결과를 제공하기 위해 쿼리를 변경해야 하는 경우가 있습니다. 예를 들어 Pictures에 대한 검색 범주를 만든다고 가정해 보겠습니다. 다른 사용자가 그림 범주에 쿼리를 입력하는 경우 그림인 검색 결과만 반환하도록 쿼리를 변경해야 합니다.
쿼리를 변경하려면 쿼리 작성기를 사용하여 쿼리 변환을 구성합니다. 쿼리 변환을 구성하여 쿼리에서 검색 결과를 가져오는 데 사용할 결과 원본 또는 검색 결과를 표시할 때 사용할 정렬 순서와 같은 쿼리의 속성을 바꿀 수 있습니다. 또한 변환은 구성할 수 있는 쿼리 템플릿을 사용하여 쿼리의 텍스트를 바꿉니다. 쿼리 템플릿은 쿼리 텍스트를 대체할 텍스트이며, 템플릿에는 쿼리 변수가 포함될 수 있습니다.
쿼리 변수는 값의 자리 표시자입니다. 변환이 쿼리의 텍스트를 쿼리 템플릿으로 바꾸면 템플릿의 쿼리 변수도 특정 값으로 바뀝니다.
변환은 컨텍스트 쿼리 변수를 쿼리 컨텍스트와 관련된 값으로 바꿉니다. 다음 표에서는 상황에 맞는 쿼리 변수의 몇 가지 예를 보여 줍니다.
| 변환은 이 컨텍스트 쿼리 변수를 대체합니다 | 이 강력한 |
|---|---|
| {User.Name} | 쿼리를 입력한 사용자의 이름 |
| {Site.URL} | 사용자가 값을 입력한 사이트 |
| {오늘} | 오늘 날짜 |
변환은 바인딩된 쿼리 변수를 사용자 쿼리에 있는 특정 텍스트로 바꿉니다. 다음 표에서는 바인딩된 쿼리 변수의 몇 가지 예를 보여 줍니다.
| 변환은 이 바인딩된 쿼리 변수를 대체합니다 | 이 강력한 |
|---|---|
| {searchBoxQuery} | 사용자가 입력한 쿼리입니다 |
| {searchTerms} | 사용자가 입력한 쿼리(가장 최근의 변환에 의해 변경됨) |
쿼리를 특정 콘텐츠 형식으로 제한하는 경우와 같이 쿼리에 제한을 추가할 때 바인딩된 쿼리 변수를 사용할 수 있습니다. 예를 들어 사진 검색의 경우 쿼리 템플릿 "{searchTerms} contenttype:picture"를 사용하여 쿼리 텍스트에 "contenttype:picture"를 추가하는 쿼리 변환을 구성할 수 있습니다. 사용자가 해당 범주에 "moon" 쿼리를 입력하면 변환이 "{searchTerms}"를 "moon"으로 바꿉니다. 따라서 쿼리 변환은 쿼리를 "moon contenttype:picture"로 변경합니다.
세 위치에서 쿼리 변환을 구성할 수 있습니다.
검색 결과 웹 파트와 같은 웹 파트에서. 다른 위치에서 쿼리를 동일하게 변경할 필요가 없는 경우 웹 파트에서 변환을 구성합니다.
특정 조건이 충족되는 경우에만 특정 작업이 수행되도록 지정하는 쿼리 규칙에서. 다음 작업 중 두 가지는 변환을 사용하여 쿼리를 변경합니다.
- 검색 결과 페이지에 결과 블록을 추가합니다. 이 작업을 수행하면 쿼리의 복사본이 만들어지고 해당 변환은 복사본만 변경합니다.
- 순위가 매겨진 결과를 변경합니다. 이 작업은 사용자가 입력한 쿼리를 변경합니다.
쿼리에서 검색 결과를 가져오는 데 사용하는 결과 원본에서 반환됩니다.
사용자 쿼리는 웹 파트에 의해 변환된 다음 적용되는 쿼리 규칙에 의해 변환되고 마지막으로 결과 원본에 의해 변환됩니다. 따라서 결과 원본에서 변환을 구성할 때 결과 원본이 쿼리를 마지막으로 변환하기 때문에 변환 변경 내용이 삭제되거나 재정의되지 않는다는 것을 알 수 있습니다. 예를 들어 검색 범주로 그림이 그림만 반환하도록 하려면 결과 원본에서 적절한 변환을 구성한 다음 해당 결과 원본을 사용하도록 검색 범주에서 웹 파트를 구성합니다.
자세한 내용은 TechNet의 쿼리 처리 개요 를 참조하세요.