Если вам нужно гибкое универсальное решение, то это будет хоть и сложно, но возможно.
Со стороны UI:
- Создается категория
- Для категории создаются разные типы фильтров
- Добавляются товары в категорию
- Все товары теперь имеют фильтры своей категории
После чего в каждом товаре заполняются данные фильтров: размер, вес, цвет и т.д.
Фильтры могут быть разных форматов: диапазон, значение, несколько значений и т.д. Так сразу все не вспомню. Можно сделать привязку фильтров как к категории, так и к товарам. Создали фильтр типа "значение", назвали его "color", привязали его к категории "обувь". После чего все товары в этой категории получили характеристику "color" которая индивидуально для каждого товара должна быть заполнена, и по которой будет идти фильтрация.
В общем это сложное решение, возможно вам нужно что-то проще.