Configure the Optimizely Search & Navigation search provider
Describes how to configure the Optimizely Search & Navigation search provider for Optimizely Customized Commerce.
The search provider is installed using the NuGet package EPiServer.Commerce.FindSearchProvider.
Note
To get the maximum value out of Search & Navigation when developing visitor-facing features for your website, you should use the Search & Navigation integration for Customized Commerce.
Configuration steps
To configure the Optimizely Search & Navigation provider for Optimizely Customized Commerce, follow these steps.
- Create an index at find.optimizely.com.
- Go to the index's details page, and make a note of the values for serviceUrl and defaultIndex.
- Setup SearchOptions in your appsettings.json file
- Set the DefaultSearchProvider of the SearchOptions to FindSearchProvider.
- Update ServiceUrl and DefaultIndex values to match the values from the index details page at find.optimizely.com
"EPiServer:Find": {
"DefaultIndex": "(set the defaultIndex here)",
"ServiceUrl": "(set the serviceUrl here)"
}
- Ensure that the following item exists in the SearchProviders list of SearchOptions.
{
"Name": "FindSearchProvider",
"Type": "EPiServer.Commerce.FindSearchProvider.FindSearchProvider, EPiServer.Commerce.FindSearchProvider",
"Parameters": {
"queryBuilderType": "EPiServer.Commerce.FindSearchProvider.FindSearchQueryBuilder, EPiServer.Commerce.FindSearchProvider",
"simulateFaceting": "true"
}
}
Change the item in the indexers list of SearchOptions to use the appropriate index builder for the search service:
"Indexers" : [
{
"Name" : "catalog",
"Type" : "EPiServer.Commerce.FindSearchProvider.FindSearchIndexBuilder, EPiServer.Commerce.FindSearchProvider"
}
]
- Rebuild your search index from the Customized Commerce Admin search interface.
Notes
- The Search & Navigation search provider for Customized Commerce matches only the basic query string against fields of type integer or string. While catalog meta-fields of type float, double, or decimal may be marked as Include in Default Search in the meta-field configuration interface, these fields are not matched against the basic query string.
- Other querying (filters, queries, or faceting against specific fields) functionality works on meta-fields of type float, double, or decimal.
- If you want to match against these data types from a basic query string, store the data in a string-typed meta-field, and mark that field as Include in Default Search.
Updated 3 days ago