A user seeks to filter and retrieve collections based on a custom metafield called ‘region’ (specifically wanting to show only collections where region equals ‘Alabama’).
Key Points:
Metafields on collections are accessible via Liquid templating
The proposed loop approach has limitations: it won’t cover all collections in shops with large inventories and may have performance issues
A working solution was provided:
Create custom metafield named ‘region’ in Shopify dashboard (Online store > Themes > Edit code)
Locate the list-collections-template file
Find instances of {%- render 'collection-grid-item' and wrap them with conditional logic
Use {% unless collection.metafields.custom.region == "alabama" %} to filter collections
Implementation Note: The code appears multiple times in the template, so all instances need updating. However, concerns remain about whether this approach is optimal given the context and what the user is ultimately trying to achieve.
Summarized with AI on November 25.
AI used: claude-sonnet-4-5-20250929.
The metafields on a collection are certainly accessible via Liquid. I use them all the time.
However that loop you’re doing will have a limit and if your shop has lots of collection it’s possible (and likely) that the loop won’t cover them all. I would also say it’s not a very performant bit of code.
Looking at the code it’s not clear what you’re trying to achieve. I see a variable being set but given the simplicity I wonder if there’s a better way to approach it. Feel free to post back with some more context.