Скрыть из каталога отсутствующие (0 на складе) товары в v.6

#
Скрыть из каталога отсутствующие (0 на складе) товары в v.6
Здравствуйте. Пересмотрел данные на форуме решения, но они написаны на пятерку, и у меня на шестой не заработали. Нужно чтобы страницы товаров, количество которых равно 0 были доступны по URL-адресу, но в каталоге не отображались.
В документации есть вот такая вот штука: http://www.hostcms.ru/documentation/modules/shop/item/show-good-available-in-the-stock/. После добавления этого кода в ТДС "нулевые" товары действительно исчезли из каталога, но страницы товаров становятся пустыми, пропадает вся информация, кроме хлебных крошек.
Подскажите как сделать так, чтобы при сокрытии контент остался на карточках товаров.
Спасибо.
Модератор
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
Такого быть не должно, обратитесь в поддержку с данными доступа в центр администрирования и ссылкой на страницу товара без информации.
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
Имеется ввиду наверное, что на отсутствующие товары нельзя перейти, они пусты так как не попадают в XSL.
А как сделать так, чтобы можно было выводить и товары с количеством на складах > 0  и те что отсутствуют, делаю выборку разными контроллерами, но соответственно карточка отсутствующего товара пуста
Модератор
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
PakoGonsalezZ писал(а):
А как сделать так, чтобы можно было выводить и товары с количеством на складах > 0  и те что отсутствуют

если не делать доп. ограничений, то товары, собственно, стандартно так и выводятся.
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
hostcms писал(а):

ДА, но как в xsl отграничить товары и модификации(они выводятся в одном списке) которых нет ни на одном из складов,  все что есть у товаров это rest, и если не выводить товар у которого rest = 0, не будут выводиться его модификации, которые есть на складе
Модератор
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
PakoGonsalezZ,
если товар не попадает под ограничение, то его модификации НЕ БУДУТ ВЫВОДИТСЯ
Вывод: не накладывайте ограничение на товар, при котором он не будет выводится. Модификации фильтруйте при выводе на странице через XSL
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
Попытался сделать ограничение в xsl
<xsl:apply-templates select="shop_item[rest > 0]" />

Установлен вывод на страницу 58 элементов, вывело на первой почему то 7, как понимаю прошелся по первым 48, вывел те что удовлетворяют условию
Но это неверно, мб подскажете как сделать по другому?
Пробовал ставить ограничения в ТДС(ниже код)
Все отлично выводится, но у нас есть архив товаров и соответственно карточки товаров пустые при переходе в них, так как товары с количеством 0 не попадают в xml
$Shop_Controller_Show
   ->shopItems()
   ->queryBuilder()
   // Модификации и остатки на складах модификаций
   ->leftJoin(array('shop_items', 'modifications'), 'modifications.modification_id', '=', 'shop_items.id')
   ->leftJoin(array('shop_warehouse_items', 'modifications_shop_warehouse_items'), 'modifications_shop_warehouse_items.shop_item_id', '=', 'modifications.id')
   // Остатки на складах основного отвара
   ->leftJoin('shop_warehouse_items', 'shop_warehouse_items.shop_item_id', '=', 'shop_items.id')
   // Есть остатки на основном складе
   ->having('SUM(shop_warehouse_items.count)', '>', 0)
   // Или
   ->setOr()
   // Есть остатки на складах у модификаций
   ->having('SUM(modifications_shop_warehouse_items.count)', '>', 0)
   ->groupBy('shop_items.id');

Модератор
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
PakoGonsalezZ,
зачем вы делаете ограничение в XSL, если ограничивать нужно на уровне контроллера. Ограничивая на XSL на разных страницах у вас будет разное количество товаров.

http://www.hostcms.ru/api6/class-Shop_Controller_Show.html
warehouseMode('all'|'in-stock'|'in-stock-modification' режим вывода товаров: 'all' — все (по умолчанию), 'in-stock' — на складе, 'in-stock-modification' — на складе или модификация товара в наличии на складе.
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
Повторюсь еще раз - у меня в каталоге должны выводиться товары которые только есть вналичии, ниже отдельным контроллером из этого же каталога я вывожу товары которых нет в наличии, при переходе в карточку товара которого нет в наличии - она пуста, так как выборка ограничена  и в xml информация не поступает
Модератор
#
Re: Скрыть из каталога отсутствующие (0 на складе) товары в v.6
PakoGonsalezZ,
В коде ТДС проверяете, если карточка товара, то ограничение на склады не накладываете.
Авторизация