2017-08-10 68 views
0

我想搜索跨多種語言(翻譯),但是當我做重複結果時,返回每種語言。我正在使用Search API Solr的Drupal進行索引。結果如下所示:Solr - 搜索多種語言返回重複項

[results] => Array 
     (
      [3239/en] => Array 
       (
        [id] => 3239/en 
        [score] => 1 
        [fields] => Array 
         (
          [search_api_id] => 3239/en 
          [search_api_relevance] => 1 
         ) 

       ) 

      [3240/en] => Array 
       (
        [id] => 3240/en 
        [score] => 1 
        [fields] => Array 
         (
          [search_api_id] => 3240/en 
          [search_api_relevance] => 1 
         ) 

       ) 

所以ID和語言都包含在鍵/ ID。

$index = search_api_index_load('default_multilingual_node_index'); 
$query = $index->query(); 
$query->keys($search_terms); 

$filter = $query->createFilter('OR'); 
$filter->condition('search_api_language', $language); 
$query->filter($filter); 

$results = $query->execute(); 

我一直在尋找一種方式(無論是Solr的配置,或Drupal的搜索API調用),以能夠在不重複的跨多種語言進行搜索無果:目前,我可以通過一個語言使用的代碼過濾器。有沒有解決方案?

+0

有用鏈接HTTPS更好的支持: //www.drupal.org/node/2336757 – PraveenKumar

回答