PHP & MySQL построение архитектуры динамических фильтров для интернет каталога
По-моему то, что вам нужно называется entity-attribute-value. Плюсы, минусы, критику и особенности реализации можно по этому словосочетанию поискать — написано много.
Личного опыта, к сожалению, нет.
У самого стоит задача написать подобное для интернет магазина, по данной тематике грамотного мануала не нашел, приходиться изобретать свое.