Filter All Store Products from Session/Cookie

Topic summary

A merchant wants to persist store-wide product filtering based on a shopper’s menu selections using a session or cookie, not limited to a single collection page.

Desired behavior:

  • Menu Option 1: values (Dog, Cat, Bird).
  • Menu Option 2: dynamically populated from Option 1 (e.g., if Dog → Poodle, Collie, Labrador).
  • When a shopper selects Dog, then Poodle, all products shown across the site should match Dog + Poodle only (hide Cat and Bird items).

Technical intent:

  • Use session/cookie to store selected values so the filter applies as the customer navigates.
  • Potentially maintain two session-based filters (Option 1 and Option 2) and allow searching by either Dog alone or Dog + Poodle.

Key question:

  • Can this be achieved with an existing Shopify app, or is custom development required?

Status:

  • No resolution provided; the request is for guidance on feasibility and approach. No code or attachments included.
Summarized with AI on December 31. AI used: gpt-5.

Would like to know if it’s possible to filter products based on a session or cookie that is set by a customers choice by a menu value(s). It’s very similar to filtering product by a collection or metafield but would like to retain that value of menu choice as they shop around the whole store, not just the collection.

Example:

Menu Option 1

Three Values in “Menu Option 1”. Dog, Cat, Bird
Menu Option 2

  • Values would populate based on choice of “Dog, Cat or Bird”.

So if they chose “Dog” in Menu Option 1 then they would see “Poodle, Collie, Labrador” in Menu Option 2. They chose “Poodle” in Menu Option 2

So now the options they chose are “Dog” and “Poodle”. So now any product within the store would be associated to only “Dog” and “Poodle” so they wouldn’t see any Cat products or Bird Products.

So there could be possible 2 sessions to filter by. Menu Option 1 and Menu Option 2. Search products by the session “Dog” and search products by the sessions “Dog” and “Poodle”.

Not sure if an App can do this or if custom coding is the option.