Bug(?) in Search & Discovery app

I’ve noticed this annoying behavior in Liquid when using facet filtering in the Search & Discovery app.

This happens only when using filtering in conjunction with search. If I search for something, and then in the search results check a filter that’s based on a variant metafield, if multiple(but not all) variants in a given product match that filter, only one of those variants will be returned in the results.

For example: I do a search for “red”. Say my results include a product called Product Z, which has two red variants, so they both return in the search results. Product Z has a variant metafield called Sheen, and there’s a filter based on this. I select “semi-gloss”. Let’s say both those red variants also match the semi-gloss selection. Only one of them will return, as product.selected_variant in Liquid. There doesn’t seem to be any way I can get all the matches of both the “red” search term and the “semi-gloss” variant metafield value.

For actual feedback/feature-requests have the merchant contact a shopify support advisor then hope and wait who knows how long.


Such tools show product level results without looping, processing, then rendering through every possible variant.
Think it through if using size-small on a product with 1000 small size variants, all that noise should NOT be dumped users when they choose small. If you think it should dump everything your just moving towards making the entire point of filtering moot.

Both things(S&D app and in-store search engine) are INTRODUCTORY level tools.
So they will ALWAYS be less than specific expectations, or premium behaviors individually.
So that’s BEFORE compounding any issues, when joining the behaviors of multiple features.

Meanwhile for deeper control and granular results and better behaviors use a premium search service or app

See, previously on: free-app-not-doing-everything-perfectly the show: https://community.shopify.com/search?q=search+and+discovery+results