먼저 패싯에 대한 하시면서 facetapi 모듈을 설치해야합니다. 두 번째는, hook_update_index에, 당신은 그냥 예입니다,
<?php function module_apachesolr_update_index(&$document, $node) {
//add additional offers;
if (count($node->field_add_offers)) {
$field = $node->field_add_offers;
foreach ($field as $lang => $values) {
foreach ($values as $value) {
if (isset($value['value'])) {
$document->setMultiValue('sm_offers', $value['value']);
}
}
}
}
} ?>
있습니다 apachesolr 인덱스에 등급을 추가해야합니다. 다국어 사이트 및 필드 배열의이 "und"키 문제로 인해 2 개의 루프를 실행합니다. (당신이 등급에 해당이없는 경우) 정렬에 사용됩니다 노드 당 여기에 또한 예를 들어, 모든 등급을 추가 할 수 있지만 계산할 수없는 한 수정,
셋째,
을 hook_facetapi_facet_info 사용하여면을 추가
<?php function module_facetapi_facet_info(array $searcher_info) {
return array(
'sm_games_facet' => array(
'name' => 'sm_games_facet',
'label' => t('games'),
'description' => t('Filter games'),
'field' => 'sm_games',
'field alias' => 'game',
'query type' => 'term',
'default widget' => 'facetapi_links',
'allowed operators' => array(FACETAPI_OPERATOR_OR => TRUE, FACETAPI_OPERATOR_AND => TRUE),
'default sorts' => array(
array('display', SORT_ASC),
),
)
);
} ?>
facetapi.api.php 파일에서 자세한 내용을 확인할 수 있습니다.
네 번째 - 콘텐츠를 다시 색인화하여 apachesolr 설정에서 패싯을 사용하도록 설정합니다.
감사 슬라바
출처
2011-09-29 09:52:20
32i
이 또한 SOLR 검색과 태양 API를 위해 사용할 수 있습니까? 나는 아파치 검색 통합을 사용하지 않고있다. 그러나 나는 이것이 그 길로가는 나의 결심을 만들거나 깨뜨릴지도 모른다라고 생각한다. – stopshinal
mhmh, apachesolr - 모듈의 이름으로, Drupal과 solr 통합을 제공합니다. schema.xmk 및 solrconfig도 제공하므로 drupal은 Solr과 통신 할 수 있습니다. 그건 아파치 검색이 아니에요, 그냥 이런 방식으로 호출됩니다. – 32i
https://www.drupal.org/project/apachesolr 대 https://www.drupal.org/project/search_api_solr. 이것은 drupal에서 두 개의 다른 모듈입니다. 그래서 나는 그것이 작동하지 않을 것이라고 생각합니다. – zsd