New Feature Preview: Elasticsearch Search Engine Support for eZ Platform v3.1
Support complex search scenarios for your users and customers for better user experiences.
This is the second in our preview blog series offering a sneak peek of new features included in our latest software version, eZ Platform v3.1. You can find part one here, previewing Site Skeleton; find part three here, previewing Admin UI improvements.
eZ Platform v3.1 was released July 2020. You can also find the eZ Platform v3.1 launch blog here.
Why Search is at the Heart of Amazing Digital Experiences
Providing strong search experience on your website or not can be the difference between an adequate – or even frustrating – user experience, versus a seamless experience that helps users progress forward in their customer journey. Great search functionality is critical to the digital experience. It is at the intersection of being able to effectively fuse together any content and commerce engagements that form key interactions of your buying journey.
As users look to discover and research before making a transaction, content is key to helping inform their decisions; at the transaction stage, easily finding products and associated product data or documentation supports smoother e-commerce processes. And both these elements are critical in developing your vendor relationship with buyers as they re-order, add additional services, or discover new product lines.
Complex Customer Touchpoints Need Complex Search Capabilities
We know many of our customers are using eZ Platform to manage a complex architecture of websites and brands. The current version of eZ Platform supports search via an open-source search engine, Solr. But while Solr is great for text-based searches, many of our customers have been telling us they need more advanced search scenarios that can deliver improved search relevancy than Solr’s text-based focus can provide.
Introducing eZ Platform Support for Elasticsearch
Like Solr, Elasticsearch is an open-source search engine solution; but it is much better suited for complex searches involving aggregated data - that is combining multiple search criteria beyond simple text-based searches to generate search results.
In addition, Elasticsearch is a very-developer friendly tool. It’s a java-based solution and is very lightweight, making it perfect to scale in cloud environments. Developers have full control in customizing how Elasticsearch indexes your eZ Platform data and how to customize search relevancy across your website(s).
- Supported as a standard feature available on eZ Platform v3.1 Enterprise Edition
- Simply enable the Elasticsearch setting in your eZ Platform configuration file to connect your Elasticsearch instance
- You can now start to design and customize search relevancy for your database
- You can build search experiences using all the same criteria as Solr search but with some additional facets
- You will be able to create filtered search experiences with multiple layers, using search criteria with a Parent>Child structure. Details for the available search criteria will be available in our technical documentation when v3.1 is launched
Building Search Scenarios for More Relevant Search Results
Let’s take the example of a website for a company that makes and sells furniture. The site has three sections:
iii) Listings section for wholesalers and professionals
> A user visits the site and searches for *chair*
> A simple text-based search engine index will provide a rudimentary result of all the pages containing text that includes *chair*
> But using Elasticsearch’s aggregated data approach, the same user is able to refine and target their search intent with different search facets
> So the text search for *chair* can be combined with other filters to sort and filter results with improved relevancy. For example:
The user is able to quickly and easily locate relevant content with a more contextual, intuitive search experience. This provides frictionless customer journeys, whether the user is looking for content to research or a specific product to purchase. Using Elasticsearch enables you as a developer to customize the Parent>Child hierarchy for the different search facets you want to provide users as part of your site search.
Now, let’s add a bit more complexity to the search: part of the user experience for the furniture website enables visitors to create a registered user profile on the site; different profiles are available for regular users versus users creating a wholesaler or professional profile.
Using aggregated data search criteria, here are some examples of more complex search scenarios this can allow you to configure for end-users:
- Build different search results based on an anonymous user searching public pages only, versus a logged-in user able to search both public and private pages behind a login:
- This might mean a wholesaler being able to search for products not available to other users
- A logged-in user being able to search for previously viewed items
- Use the extension points available in our Elasticsearch integration to include custom data in your search relevancy design
- For example, if you have integrated eZ Platform with your ERP system, you can index additional customer data alongside all the items in your content repository
- So now, when a wholesaler user logs in and searches for *chair* you can deliver search results that include previous orders or invoices related to “chairs”.
Beyond Intuitive Search
Elasticsearch also enables you to build a clearly defined search strategy to help guide users along your customer journey when they perform searches. Search result pinning allows you to build rules for how content items in your search results should be prioritized. So using your different search facets, you define a hierarchy that will always pin certain content items in the search results to the top of the results page based.
Let’s go back to the furniture website and the search for *chair*. Remember how the site has three areas – products, inspiration, listings – using this content architecture, you can design search relevancy to prioritize how content items in the three different sections are displayed. So when a user searches for *chair*, you can decide that content items under the products section related to *chair* are pinned to the top of the results page, and prioritized before results under inspiration, with results under the listings pages being prioritized last.
As we see our customers support ever more complexity into their digital experiences to meet the requirements of their customers, being able to offer advanced search capabilities is an essential ingredient for digital teams. With search powered by Elasticsearch, you can now build the search experiences that your customers need.
We Love Your feedback
We're passionate about building products that help your digital business grow. Do you have a great idea for a feature that should be added to eZ Platform? Or just want to give us some feedback on a current feature? Head to our Product Roadmap page here to submit your request.