Тема: Количество товаров в категории с "Подбором"

Здравствуйте. Подскажите как вывести количество товаров в категории, создаваемой с помощью подбора товаров?

Повысить оценку Понизить оценку

Re: Количество товаров в категории с "Подбором"

Здравствуйте!

 {if $subdir.fields.is_virtual}
                     {$cntdir=count($subdir.fields->getVirtualDir()->getFilteredProductIds($subdir.id))}
                  {else}
                      {$cntdir=$subdir.fields.itemcount}
                  {/if}

Иногда надо в virtualdir.inc.php
добавить:

if (!empty($this->dir['virtual_data_arr']['properties'])) {
                $prop_api = new \Catalog\Model\Propertyapi();
                $prop_api->getFilteredQuery($this->dir['virtual_data_arr']['properties'], 'A', $q);            
            }
            //eventus start
              $product_api->setFilter('public', '1');
              $product_api->setFilter('num', '0', '>');
            //eventus end
            
            $q->select = 'A.id';
            $ids = $q->exec()->fetchSelected('id', 'id');

Чтобы не подсчитывались выключенные товары и товары без остатка. Или скопировать этот файл в кастомный модуль и его вызывать. Что будет правильнее.

Re: Количество товаров в категории с "Подбором"

Так же можно сделать обработчик событий при изменении каталога для подсчета количества товаров в стандартное поле itemcount.