I'm developing magento store with couple of thousands of products. Most products have combined color e.g. "black/green/white" (not three separate colors, for example a purse has black, green and white elements).

Because of this the list of colors in the layered navigation filter is really huge and ugly. I have something like "black/green", "black/green/white", "black/white" etc. What I want to do is form a normal list of colors like "black", "green", "white" etc. And then when the customer clicks on say "black", he can see all the products that have "black" as part of their combined color.

Is this possible? And if so, where should I start digging?

2 Answers 2


It is a duplicate. Here is an answer.

Create a new Color attribute (and delete the current one or you should modify the database) and set Catalog input type for store owner to Multiple Select.

To modify the current attribute, run the SQL after you change xyz to your attribute_id:

UPDATE `eav_attribute` SET `frontend_input`='multiselect' WHERE `attribute_id`=xyz LIMIT 1;
  • Thanks a lot. This is exactly what I was looking for. Never would have thought that Magento had this feature by default.
    – palehorse
    Jan 30, 2014 at 16:20

This would require you to update the multi-selection for each individual item (Over 1000)

Wouldn't be better creating some sort of Global association of colors?
White: [“white”,”bone”,”cream”,”beige”,”Arctic White”,”Blizard”,”Polar”]
Black: [“midnight”, “Ebony”, “Graphite”,”Charcoal”]

As you get new colors you add them to your array OR a table in your database. Since it's global it should probably be some sort of Admin Custom Table - Probably in the same menu as:
Catalog -> [Products, Categories, Attributes,Colors]

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.