diff --git a/includes/service.inc b/includes/service.inc index 76225fa..7da6558 100644 --- a/includes/service.inc +++ b/includes/service.inc @@ -646,6 +646,7 @@ class SearchApiSolrService extends SearchApiAbstractService { $ret = array( 'search_api_id' => 'item_id', 'search_api_relevance' => 'score', + 'search_api_random' => 'random', ); // Add the names of any fields configured on the index. @@ -854,6 +855,10 @@ class SearchApiSolrService extends SearchApiAbstractService { if (substr($f, 0, 3) == 'ss_') { $f = 'sort_' . substr($f, 3); } + // Random is strictly processed with a order. See SearchApiQueryInterface::sort(). + if ($field == 'search_api_random') { + $f = ''; + } $order = strtolower($order); $sort[$field] = "$f $order"; } diff --git a/solr-conf/3.x/schema.xml b/solr-conf/3.x/schema.xml index acc5e4b..e80d7cb 100644 --- a/solr-conf/3.x/schema.xml +++ b/solr-conf/3.x/schema.xml @@ -515,7 +515,7 @@ - + diff --git a/solr-conf/4.x/schema.xml b/solr-conf/4.x/schema.xml index 6e2b615..f5442c7 100644 --- a/solr-conf/4.x/schema.xml +++ b/solr-conf/4.x/schema.xml @@ -521,7 +521,7 @@ - +