Так просто не ответишь. Надо понимать, какая у тебя структура базы, и что такое фильтр. Обычно внутри группы делают связь "ИЛИ" (расширение списка, если твоими словами), а между группами - связь "И" (сужение). Пример.
Ты продаешь футболки, У тебя 2 группы - цвет и размер.
Цвет: синий, красный, желтый
Размер: xl, xs, xxl.
Вот если ты выберешь "синий", а потом "красный", то список должен "расшириться" - сработает логика "ИЛИ". А если еще добавишь "xl" - то должен "сузиться" - сработает логика "И".
Веду я к тому, что я вижу у тебя только фильтр id, и не ясно вообще, есть ли группы, и как оно к продуктам привязано.