The current condition system has a major limitation when dealing with mixed AND/OR logic.
Example scenario:
Show a download button when order status is completed AND the user has one of multiple roles.
The condition should read as:
order_status = completed AND (user_role = subscriber OR user_role = customer OR user_role = author)
So you need:
- Order status completed (required)
- AND at least one of the user roles
The problem:
Without proper grouping, Bricks might interpret this as:
(order_status = completed AND user_role = subscriber) OR user_role = customer OR user_role = author
Which would allow any customer/author regardless of order status - completely breaking the intended logic.
What we need:
The ability to create logical groups with parentheses. The parentheses create the logical grouping - order status is separate from the user role group.
Current limitations:
- Can’t add multiple values to a single field comparison
- Can’t create proper nested logic
- Forces complex conditions to be impossible or interpreted incorrectly
This is basic conditional logic that most page builders and programming languages handle easily. Bricks should support proper logical grouping to make complex conditions work as intended.