이 페이지에서는 사용자가 상세검색 라벨을 사용하여 검색어를 미세 조정하도록 지원하는 방법을 설명합니다. 검색엔진 라벨과 달리 상세검색 라벨은 사용자에게 표시되며 검색결과 페이지 상단에 표시됩니다.
개요
검색엔진의 결과 집합을 조합하고 순위를 조정한 후에도 사용자가 여전히 너무 광범위한 검색어를 입력할 수 있습니다. 예를 들어 사용자가 건강 상태를 검색하면 어떤 종류의 정보를 찾고 있는지 명확하지 않습니다. 환자가 증상, 치료법 또는 위험 요인에 관한 정보를 찾고 있나요? 하지만 상세검색 또는 검색결과 카테고리를 선택할 수 있으면 검색 범위를 좁히고 신속하게 답변을 얻을 수 있습니다.
![상세검색 링크 선택이 있는
검색 결과 페이지](https://developers-dot-devsite-v2-prod.appspot.com/static/custom-search/images/refinements.png?authuser=6&hl=ko)
상세검색은 분류를 위해 사이트에 적용하는 라벨입니다. 만든 상세검색 라벨은 검색결과 페이지 상단에 링크로 표시됩니다. 사용자가 상세검색 링크 중 하나를 클릭하면 상세검색 라벨로 태그를 지정한 사이트가 라벨을 정의한 방식에 따라 단독으로 검색되거나 다른 검색결과보다 높은 순위로 승격됩니다. 사용자의 검색어에 추가 검색어를 추가하여 사용자가 더욱 타겟팅된 결과를 검색하거나 다른 페이지로 리디렉션하도록 할 수도 있습니다.
상세검색 라벨 만들기
제어판의 상세검색 탭에서 상세검색 라벨을 만들고 사이트에 태그를 지정할 수 있지만 프로그래밍 검색 XML 주석 파일을 사용하는 경우 순위를 더 세부적으로 관리할 수 있습니다. 검색엔진 라벨과 마찬가지로 컨텍스트 파일에 상세검색 라벨을 정의하고 주석 파일에서 사이트에 적용합니다.
다음 예에서와 같이 Context
섹션 내의 Facet
요소를 사용하여 상세검색 라벨을 정의합니다.
<CustomSearchEngine> <Title>Universities</Title> <Context> <Facet> <FacetItem title="Lectures"> <Label name="lectures" mode="BOOST" weight="0.8"> <Rewrite>lecture OR lectures</Rewrite> </Label> </FacetItem> </Facet> <Facet> <FacetItem title="Assignments"> <Label name="assignments" mode="BOOST" weight="0.8"> <Rewrite>homework OR assignment OR assignments</Rewrite> </Label> </FacetItem> </Facet> <Facet> <FacetItem title="Reference"> <Label name="reference" mode="FILTER"> </Label> </FacetItem> </Facet> <Facet> <FacetItem title="Papers"> <Label name="papers" mode="FILTER"/> <Redirect url="http://scholar.google.com/scholar?q=$q"/> </FacetItem> </Facet> <BackgroundLabels> <Label name="_cse_omuauf_lfve" mode="FILTER"/> <Label name="_cse_exclude_omuauf_lfve" mode="ELIMINATE"/> </BackgroundLabels> </Context> </CustomSearchEngine>
Facet
요소의 구조는 다음과 같습니다.
Facet
각 Facet
요소는 최대 4개의 FacetItem
하위 요소를 포함할 수 있습니다. 상세검색 라벨은 원하는 만큼 만들 수 있습니다. 검색결과 페이지에 표시되는 라벨 수
도 제어할 수 있습니다.
예: 상세검색 라벨
기본 상세검색 라벨은 다음과 같습니다.
<Facet> <FacetItem title="Lectures"> <Label name="lectures" mode="BOOST" weight="0.8"/></Label> </FacetItem> </Facet>
그림 3: 샘플 코드는 라벨이 있는 검색결과 페이지를 생성합니다.
상세검색 라벨의 요소
다음은 Facet
의 하위 요소입니다.
요소 | 속성 | 설명 | 값 |
---|---|---|---|
FacetItem |
title |
결과 페이지 상단에 표시되는 상세검색 링크입니다. | 링크의 제목입니다. 위 예에서는 결과 페이지 상단에 있는 '강의' 링크가 표시됩니다. 제목은 구체적이고 최대한 짧아야 합니다. 특히 검색결과 페이지에 상세검색 링크가 많은 경우 공간을 절약하기 위해 상세검색 링크가 잘릴 수 있습니다. 사용자의 검색어를 상세검색 링크로 표시하는 |
Label |
name |
상세검색 라벨의 이름입니다.
이 이름을 사용하여 주석 파일에서 사이트에 태그를 지정합니다.
또한 프로그래밍 검색 엔진은 사용자가 상세검색 링크를 클릭하면 검색어에 라벨 이름을 추가합니다. 개요 섹션을 다시 살펴보면 샘플 검색결과 페이지에 'pimple more:condition_treatment'가 포함된 검색창이 표시됩니다. 'more:condition_treatment' 부분은 라벨 사용을 나타내고 'condition_treatment'는 |
라벨을 설명하는 이름입니다. 주석 파일을 볼 때 컨텍스트 파일을 다시 참조할 필요 없이 라벨의 용도를 파악할 수 있으면 좋습니다. 다음을 포함하는 이름 지정 규칙을 따라야 합니다.
|
mode |
검색엔진 라벨의 모드와 상세검색 라벨의 모드는 동일한 방식으로 작동합니다.
동일한 검색엔진에서 세 가지 유형(부스트, 필터링, 상세검색 제외)을 모두 만들 수 있습니다. 가중치 작동 방식에 관한 자세한 내용은 검색결과 순위 지정 페이지를 참고하세요. |
각 라벨에 mode 값을 지정합니다.
|
|
weight |
검색엔진 라벨과 상세검색 라벨의 가중치는 같은 방식으로 작동합니다. 가중치 작동 방식에 관한 자세한 내용은 검색결과 순위 지정을 참고하세요. | 부스트 및 필터 라벨 전용. -1.0 에서 + 1.0 사이의 값입니다. 값을 정의하지 않으면 라벨에 암시적 값 +0.7 이 포함됩니다. 라벨에 다양한 가중치를 적용할 수 있지만, 세분화된 결과를 얻으려면 높은 가중치를 적용하는 것이 좋습니다.
특정 사이트만 표시되도록 검색결과를 세분화하려면 필터 라벨에 음수 가중치를 사용하려는 경우 결과가 비어 있을 수 있습니다. 필터 라벨은 제한된 수의 사이트로 검색을 제한하며 |
라벨을 사용하여 사이트 태그하기
상세검색 라벨로 사이트에 태그를 지정할 수 있습니다. 각 주석에는 라벨이 여러 개 있을 수 있습니다. 즉, 동일한 사이트를 다른 검색엔진에서 사용하여 사이트의 순위를 달리 지정할 수 있습니다. 검색엔진 라벨을 조정하기 위해 주석에 적용하는 점수는 상세검색 라벨에도 적용됩니다.
XML 주석
다음은 XML 형식의 라벨로 사이트에 태그를 지정하는 방법을 보여줍니다.
<Annotations> <Annotation about="webcast.berkeley.edu/*" score="1"> <Label name="university_boost_highest"/> <Label name="lectures"/> </Annotation> <Annotation about="www.youtube.com/ucberkeley/*" score="1"> <Label name="university_boost_highest"/> <Label name="videos_boost_mid"/> <Label name="lectures"/> </Annotation> </Annotations>
사용자를 돕는 다른 방법
검색결과를 세분화하는 것 외에도 상세검색 링크를 사용하여 사용자가 더 정확하게 타겟팅된 결과를 얻을 수 있습니다. 사용자의 검색어에 검색어를 추가하거나 사용자를 다른 검색엔진 또는 웹사이트로 리디렉션할 수 있습니다.
검색어 추가
사용자의 쿼리에 유용한 검색어를 추가하여 사용자에게 도움을 주려면 Rewrite
요소를 사용하면 됩니다.
이 요소는 사용자가 상세검색 링크를 클릭하면 사용자의 검색어에 검색어를 추가합니다. Rewrite
요소는 최대 100자(영문 기준)까지 허용되며 모두 소문자여야 합니다. OR
와 같은 대문자 검색 연산자는 유일한 예외입니다. 검색 연산자에 관한 자세한 내용은 손쉬운 고급검색을 참고하세요.
다음 예는 Rewrite
를 사용하는 방법을 보여줍니다.
<Facet> <FacetItem title="Homework"> <Label name="assignments" mode="BOOST"> <Rewrite>homework OR assignment OR assignments</Rewrite> </Label> </FacetItem> </Facet>
이 예에서는 '과제'라는 상세검색 링크를 클릭하는 사용자를 돕는 방법을 보여줍니다. 사용자가 입력한 검색어에 '과제', '과제' 또는 '과제'라는 단어를 추가합니다.
표시되는 상세검색 라벨 수 제어
상세검색을 정의한 경우 프로그래밍 검색 엔진의 검색결과 상단에 상세검색 라벨이 표시됩니다. 모든 상세검색 라벨을 표시하거나 일부만 표시할 수 있습니다.
상세검색 라벨의 하위 집합만 표시하도록 선택한 경우 프로그래밍 검색 엔진은 검색결과가 가장 많은 상세검색 라벨을 표시합니다. 예를 들어 'HTML', 'CSS', '자바스크립트'라는 상세검색 라벨이 3개 있지만 검색엔진이 2개만 표시하도록 설정한 경우, 프로그래밍 검색 엔진은 특정 사용자 검색어에 대한 검색결과 수가 가장 많은 상세검색 라벨 2개를 표시합니다.
즉, 표시되는 상세검색 라벨의 수는 고정되어 있지만 상세검색 라벨 자체는 사용자의 쿼리에 따라 변경됩니다.
XML 정의에서 상세검색 라벨 수를 설정하려면 컨텍스트 정의의 CustomSearchEngine
태그에 top_refinements
속성을 추가합니다.
<CustomSearchEngine top_refinements="n"></CustomSearchEngine>
여기서 n
는 표시하려는 상세검색 수입니다.
숫자를 0
로 설정하면 검색결과에 상세검색 라벨이 표시되지 않습니다. 컨텍스트 정의에 설정이 없으면 검색엔진은 해당 라벨의 검색결과 여부와 관계없이 모든 사용자 쿼리에 정의한 모든 상세검색 라벨을 표시합니다.
제어판의 상세검색 페이지에서 상세검색 라벨 수를 설정할 수도 있습니다.