Category + Active select
Модуль Active select позволяет менять сотержимое ниспадающих списков на лету.
В концепции Active select существует два объекта - ведущий и ведомый. Ведущий объект действует на ведомый объект. Второй изменяет свое состояние в зависимости от состояния первого. Если в качестве объектов взять ниспадающие списки, то ведомый список будет наполняться разными пунктами в зависимости от того, какой пункт выбран в ведущем списке.
Вся эта функциональность доступна для использования в системе категорий.