The relevantSort widget allows users to switch between relevant sorting and exhaustive search modes. This is useful for virtual replica indices that support Relevant Sort, letting users choose between more relevant results or comprehensive coverage.
Usage
const relevantSort = instantsearch . widgets . relevantSort ({
container: '#relevant-sort' ,
});
search . addWidget ( relevantSort );
Examples
Basic Relevant Sort
instantsearch . widgets . relevantSort ({
container: '#relevant-sort' ,
});
With Custom Templates
instantsearch . widgets . relevantSort ({
container: '#relevant-sort' ,
templates: {
text ({ isRelevantSorted }) {
return isRelevantSorted
? 'Showing relevant results'
: 'Showing all results' ;
},
button ({ isRelevantSorted }) {
return isRelevantSorted
? 'See all results'
: 'See relevant results' ;
},
},
});
With Custom CSS Classes
instantsearch . widgets . relevantSort ({
container: '#relevant-sort' ,
cssClasses: {
root: 'my-RelevantSort' ,
text: 'my-RelevantSort-text' ,
button: 'my-RelevantSort-button' ,
},
});
Options
container
string | HTMLElement
required
CSS Selector or HTMLElement to insert the widget.
Templates to customize the widget rendering. Template for the descriptive text. Receives isRelevantSorted (boolean). ({ isRelevantSorted }) => string
Template for the toggle button. Receives isRelevantSorted (boolean). ({ isRelevantSorted }) => string
CSS classes to add to the widget elements. CSS class for the root element.
CSS class for the text element.
CSS class for the button element.
HTML Output
< div class = "ais-RelevantSort" >
< div class = "ais-RelevantSort-text" >
We removed some search results to show you the most relevant ones
</ div >
< button class = "ais-RelevantSort-button" >
See all results
</ button >
</ div >
Requirements
This widget only works with virtual replica indices that have Relevant Sort enabled. Learn more about Relevant Sort in the Algolia documentation.
Behavior
The widget displays when:
The index is a virtual replica with Relevant Sort enabled
Results are available
When users click the toggle button:
If currently showing relevant results: switches to exhaustive mode (shows all results)
If currently showing all results: switches back to relevant mode (shows only relevant results)
The widget uses the relevancyStrictness search parameter to control the sorting mode.