Фильтр по родительскому термину

Главные вкладки

Аватар пользователя kari kari 31 марта 2021 в 21:12

Всем привет! Есть словарь таксономии с иерархией (категории и подкатегории). В категории могут быть подкатегории, а могут и не быть. Есть материал - товар, с которым этот словарь связан. Товары могут находиться либо в категории, либо в подкатегории. Есть товары, которые находятся в категории и не принадлежат ни к одной ее подкатегории. Схематично ыглядит это примерно так:

Категория1
-подкатегория1.1.
-подкатегория1.2.
Категория2
Категория3
-подкатегория3.1
-подкатегория3.2
-подкатегория3.3
Категория4

Товар А: категория 1
Товар Б: категория 1, подкатегория 1.2
Товар В: категория 1, подкатегория 1.2
Товар Г: категория2
Товар Д: категория3, подкатегория 1.3

и т.д.

Так вот мне нужно в таком каталоге товаров (view) сделать фильтр только по родительским терминам. При этом, чтобы в этом фильтре предлагались только те категории, в которых есть какие-то товары на каком-нибудь уровне. То есть, в моем примере фильтр должен предложить на выбор только категории 1,2 и 3. Как решается такая задача?