π Main features
π Vanilla JS alternative for the Instant Search React based component (2.10.31.1 & 2.11.16.1)
This releases introduces the ability to switch from the React based JS component to a vanilla JS component for the Instant Search if you have problems or conflicts with the React building phase pre/post-delivery, through two new settings
- Stores > Configuration > Elasticsuite > Instant Search > Use Native JS Autocomplete (Fallback Mode)Β (defaults to “No”)
- Stores > Configuration > Elasticsuite > Instant Search > Disable React bundle loading (Fallback Mode)Β (defaults to “Yes” but only visible if the previous setting is set to “Yes”)
To benefit from these changes, make sure that you also upgrade the composer package smile/magento2-react to its latest version (16.12.5).
π Language support: Introducing dictionary based stemming
For handling in search the singular and plural form of nouns or conjugated versus infinitive form of verbs, Elasticsuite relies on the Elasticsearch/OpenSearch algorithmic stemming feature that support a wide variety of languages, but not all of them.
For languages not supported, we’ve introducing in this release in Elasticsuite Premium the ability to use Elasticsearch’s / OpenSearch’s dictionary based stemming feature that relies on Hunspell dictionaries used by a wide variety of spellcheckers.
This can be configured at the Store scope in Stores > Configuration > Elasticsuite > Analyzers Settings > Dictionary based stemming.
π Search: Detect and transform unit symbols in quantity/size expressions to preserve the meaning
By default, when indexing content and searching, most of special (non alphanumerical) characters are removed at the beginning of the text analysis and those remaining are then used to delimit/break words and finally removed.
This can be problematic if your catalog data relies heavily on units of measure and/or if your users use their symbol when searching (like “ for inches or ‘ for feet): out of the box, there is no difference in search between 3" screws and 3' screws.
This release introduces in Elasticsuite Premium a mechanism that allows you to define “unit detection rules” rules that will replace a unit of measure symbol or shorthand notation by its full name both at indexing and search time, preserving the sense of the original expression.
For instance, if you associate the character/sequences of character “, in and in. to inches, the expressions 3″ and 3in and 3in. will all be transformed to 3 inches at indexing and search time.
The new settings located in Stores > Configuration > Elasticsuite > Analyzers Settings > Unit detection configuration offer a wide coverage of use cases (location of the symbol before or after the quantity, whether the unit name replacing the symbol should be put before or after the quantity, etc).

Autocomplete & π InstantSearch : Ability to force taking categories/products manual/edited URL rewrites into account
By default, for the categories autocomplete, Elasticsuite will rely on the fact that redirect (301) URLs will always be generated when the url_key of a category changes.
Unfortunately, if you manually edit the URL rewrite of a category in admin (Marketing > SEO & Search > URL Rewrites), or if you use a third party module that generates them according to specific rules without putting in place redirect (301) URLs, you could end up with a category being shown in the autocomplete results with a link leading to a 404 page.
The same applies on Elasticsuite Premium for products in addition to categories.
We’ve decided to introduce settings in Stores > Configuration > Elasticsuite > Catalog Search > Explicit URL rewrites support that can force Elasticsuite to look into the URL rewrites table at indexing :
- Enabled for categoriesΒ : which is set toΒ Yes by default, since the overhead of looking for categories URL rewrites should be negligible to minimal
- πΒ Enabled for productsΒ : (available onΒ Elasticsuite Premium) which is set toΒ No by defaultΒ since the overhead can be noticeable depending on your catalog size and the number of stores you have.
Please be aware that at this time, there is no automated mechanism that flags a category or a product for being re-indexed in the search engine when an URL rewrite that targets it is changed.
Thesaurus: ability to apply the synonyms rules without regard to singular/plural forms of words
A known limitation about the thesaurus feature is that synonyms and expansions rules are triggered only when the word searched by a user is present exactly as is in the rules.
For instance
- searching for “stories” would not trigger a “story,tale” synonym rule
- searching for “sports” would not trigger a “sportΒ => football,tennis,soccer,running” expansion rule
The common way to deal with that is to include the extra singular/plural form of words in the rule, for instance
- changing the synonym rule from “story,tale” to “story,stories,tale,tales“
- changing the expansion rule from “sport => football,tennis,soccer,running” to “sport,sportsΒ => football,tennis,soccer,running”
This can be avoided starting from this release by switching to Yes the new setting in Stores > Configuration > Elasticsuite > Thesaurus (global settings) > Enable stemming on synonym and expansion rules.
It is not enabled by default because we already know of some limitations
- ignoring the singular/plural aspect of words will not workΒ for multi-word synonym rulesΒ (e.g. “red dragon,blue vampire”)
- in some languages, it can happen that “double stemming” occurs, losing some precision in alternative queries
- in french “chaises” (“chair”) will be stemmed into “chais” at the thesaurus time and possibly “chai” (stem for “cellar”) at search time
But do not hesitate to try the feature and give us some much welcomed feedback.
(2.4.7 and 2.4.8) Attribute filter-ability in search vs search-ability (2.11.16.1)
Starting sometime in Magento 2.4.7, it was no longer possible when editing an attribute in admin to set “Use in Search Results Layered Navigation” to “Yes” if “Use in Search” was set to “No” (changing that property through our custom “Elasticsuite Product Attributes” import/export was still possible though).
It is now fixed.
π¦ Features
- π [Analysis] Detect quantity/size with units
- π [Analysis] Preserve some special chars
- π [AdvancedAnalysis] Introduce Dictionary based stemming
- π [AB Campaign] Add the number of uses and number of results of search term in the campaign optimizer form
- [Catalog] Accessibility adjustments
- [Catalog] [Autocomplete] Take categories manual/edited URL rewrites into account
- [Core] Support custom scoring model/similarity at the attribute/field level
- π [Explain] Document thesaurus stemming use
- π [Explain] Add clarification about the weight in matches. Mentions the scoring model/algorithm.
- [Indices] Analysis: adding token type info
- π [InstantSearch] Take categories manual/edited URL rewrites into account
- π [InstantSearch] Take products manual/edited URL rewrites into account
- π [InstantSearch] Vanilla JS component
- π [InstantSearch] Allow disabling the React Bundle loading altogether
- π [Recommender][Healthcheck] Critical healthcheck for the similarity attribute(s)
- [Thesaurus] Allow using stemmed words to match rules
π§° Technical
- [Analysis] Handle uppercase elision
- π [CascadeSearch] Analysis: add implicit word delimiter parameter
- [Catalog][Autocomplete] Pull category URL suffix from store scope
- π [Core] Metapackages: clean alphabetical list of modules
- [Core] Prevent firebear/importexport messing up analysis config
- [Core] Analysis: add implicit word delimiter parameter
- [Core] Analysis: introducing constant and token filters for special characters handling
- [Core] Stemmer selection in admin, minor CSS tweak
- [Core] Fix for upcoming PHP 8.5 deprecation, casting to double is no longer allowed
- π [Hyva][Recommender] Recommender blocks (loader) to the correct location
- π [HyvaCompatibility] CSP: register inline script tags
- [Indices] Escape analysis tokens
- π [InstantSearch] Pull Category URL suffix from store scope config
- π [InstantSearch] Pull Product URL suffix from store scope config
- [Optimizers/Catalog] UI component: reposition search terms’ Uses/Popularity’
- [Optimizers] Conditions engine useable when Virtual Categories module disabled
- [Thesaurus] Max number of rewritten queries to 50
- [Thesaurus] Issue 3713 Force leniency when creating index
- [Thesaurus] Disabling by default stemming in thesaurus rules.
π Fixes
- [CatalogGraphQl] Fixes issue 3643 functionally (ES searchContext update) properly
- [Catalog][GraphQL] Fixes issue 3574, add customer group condition for price filtering
- [GraphQl] Fix Numeric Attributes filter type
- [Catalog] Fixes issue 3743 Make is_filterable_in_search independent
- [Core] Replacing undeclared advanced analysis settings ACL
- [Core] Fixes issue 3623, add supporting getMinPrice() and getMaxPrice() as Magento Core functionality
- [Layer] Fix category in search context
- [Optimizers] Fixes search terms num. results not initially shown after selection
- π [Recommender] Fix invalid form key in add to cart form
- π [HyvaCompatibility][Recommender] Fixes 500 errors in recommender ajax endpoints
| Full Changelogs (Elasticsuite Open Source): 2.11.15.1…2.11.16.1 2.10.30.1…2.11.31.1 |