Sitecore Search is a new composable SaaS offering released recently that is based on the acquired product called Reflection, built on top of ElasticSearch.
Sitecore Search is impressively fast, with standards set to be under half of a second roundtrip timeline. Almost all interaction with it and configuration is dome from UI, the coding aspect is almost non-existent and mostly relates to front-end integration. Due to that Sitecore Search offers the fastest time to market compared to the rest of the search platforms. Documentation is also pretty decent and takes you through all the aspects of configuration and operations.
You may see many highly wanted features that Coveo has:
- multiple indexes, multiple sources, multiple sites
- multilingual out of box
- boosting and burying, sorting and paging
Unified search from multiple sources is really good – take a look at Sitecore.com site which consolidates four separate websites owned by Sitecore into a single search experience. Other highly desired features such as autocomplete, and synonyms are also coming out of the box.
There is a personalization part of it which is AI-powered based on the context of previous user interaction. When you customize search result pages (/search by default) you can create variations to them, so that you can distribute the traffic between variants and conduct A/B testing. With pages, you define widgets that carry on rules (boosting, burying, blacklisting etc.)
Crawlers
There are several types of crawlers, with Advanced Web Crawler that you would probably be using most of the time. It has numerous extractors, and I will briefly touch a few of them.
The most straightforward extractor is XPath expression where you can just extract the value by the expected DOM location and also optionally tag it for further faceting or filtering. This is the fastest approach when dealing with specific content types (ie. news, blogs, etc.).
When the above is not enough and you need to implement some sort of logic, you may rely on javascript code for extracting content. It could be a basic simple function that processes the DOM of a page, extracts values from desired attributes, processes/cleanses them and returns the combined result as simple JS objects with all the processed fields. The business logic is entirely up to you, so you can set up multiple levels of fallbacks if your preferred attributes are missing.
Developer Resources
Search provides developer tools in the Customer Engagement Console which has:
- API Access – page for accessing APIs, API keys, and endpoints.
- API Explorer – interaction with the Search and Recommendation API. It allows you to make API requests from the UI and get the results immediately, which really speeds up tuning up your search aspects like boosting. You can also adjust Limit and Offset parameters which is helpful to test the pagination.
- Event Monitor – testing the events you send to Search from visitor interactions on your site and ensure you pass it in the valid format
Content Browser
Has the same name and is similar to the one in Coveo, it allows you to browse through the indexed documents and see their source/origin, however, that one is not as much powerful as the one from Coveo.
Search Analytics
Search Analytics helps you understand your conversions & trends, investigating page views, clicks, engagements, etc.
There is an interesting but very desired Content Gap feature identifying what user searches and fails to. Analytics reveals that pretty well.
Here’s an example of a real-life implementation of Sitecore Search done at the vendor’s main site. Another example has Sitecore Search integrated with a Vercel-hosted site powered by Sitecore XM Cloud.