diff --git site/sites/all/modules/apachesolr/apachesolr_search.module site/sites/all/modules/apachesolr/apachesolr_search.module index 9cb0689..d342d83 100644 --- site/sites/all/modules/apachesolr/apachesolr_search.module +++ site/sites/all/modules/apachesolr/apachesolr_search.module @@ -227,9 +227,12 @@ function apachesolr_search_execute($keys, $filters, $solrsort, $base_path = '', } if (('' == $keys) && isset($params['fq'])) { - // Move the fq params to the q.alt for better performance. - $params['q.alt'] = implode(' ', $params['fq']); - unset($params['fq']); + $filter_queries = implode(' ', $params['fq']); + if (!strstr($filter_queries, '{!')) { + // Move the fq params to the q.alt for better performance. + $params['q.alt'] = $filter_queries; + unset($params['fq']); + } } $response = $solr->search($query->get_query_basic(), $params['start'], $params['rows'], $params);