Drupal 8/9 module provides a user interface for the Federated Search for multiple Drupal sites which index their content into a single shared Solr Core.
At Digital Scholarship Unit - UTSC Library, we have developed this module to support search and retrieval using a core that is shared by multiple individual Drupal sites. This allows us to have a federated search across Drupal sites where an end user can conduct a search and see relevant results from multiple sites.
/admin/config/search/search-api/index/YOUR_SOLR_INDEX/fields
in each of exhibit sites, setup with Search API fields with the same MACHINE NAME
and TYPE
. For example:Field | Machine Name | Type | In Solr |
---|---|---|---|
Thumbnail | thumbnail | String | ss_thumbnail |
Title | title | Fulltext | tm_title |
Description | description | Fulltext | tm_description |
URI (search_api_url) | url | String | sm_url |
Other optional fields to add... | ... | ... | ... |
composer require digitalutsc/ajax_solr_search
git clone https://github.com/digitalutsc/drupal_ajax_solr_search.git
git clone https://github.com/digitalutsc/ajax-solr.git
/admin/config/search/ajax_solr
, setting up with:
/federated-search
.sortMissingLast=true
to the field in the Solr schema. This property is false by default.string
fields is case-sensitive. Case-insensitive sorting can be done by modifying the Solr schema.Year Range and Sort Criteria Configuration
/federated-search
.This module won't work if its Drupal site and Solr Endpoint don't have the same Hypertext Transfer Protocol (HTTP). It means that both of Drupal site and Solr endpoint must be either in https://
or http://
.