In the storefront API, on productSearch, it is possible to add a category, product list or price list to limit the search result. All three of these seems to do a “hard” filtering, so that products that do not match the criteria are excluded from the search result.
These three all have a boost field, which i fail to understand the purpose of. Since all hits are required to meet match the criteria, what difference could the boost make? I have tried some simple queries in Nitro but can’t find a case where the boost on these matters. Any case that I am missing?
The reason I am investigating this is because we have a case where we would want to prioritize som search results within a given product list, which I can’t find a way of doing right now.
The purpose of the boost field was to to be able to boost different sections of the category/product list but the model was changed and now we only supports one of each of these properties. The reason was to get it to work with sort.
If you have use-cases that it may be good to search of multiple of these, describe them in an idea at the https://ideas.litium.com
I don’t really understand what you mean by boosting different sections of the category/product list, can you give an example of that?
Not sure if this is really the way to go for our use case, what we really are looking for is adding custom sorting algorithms (in this case always show products from a certain product list higher in the search result). Boosting on one product list could be one option but I think that it could also introduce other issues for us.
The purpose from the beginning was that you was able to filter on multiple categories or product lists on the same time, this was removed in early stage of the storefront api but the boost property was something that we didn’t think of to remove. Today they have no impact because you can only filter on one category or product list.
Okay, I see. So it is not possible right now to query for products that are either in CategoryA or CategoryB (or the same for product lists)? If so, I can see the use for that.