цен с учетом правил корзины для списка товаров (как в разделе каталога)?
Тыкался в компоненты каталога и в механизм экспорта из модуля магазина - распутать пока не удалось.
Для упрощения:
- торговые предложения не используются
- используются только правила корзины (use_sale_discount_only = Y)
- только один фиксированный тип цены
выдрать цены надо?
Просто цены я выдрал. Нужно посчитать их с учетом всех скидок
ну я об этом спрашивал
ковырять catalog.section офк. сначала предзагрузка всякого Catalog\Discount\DiscountManager::preloadPriceData($productsId, $prices); Catalog\Discount\DiscountManager::preloadProductDataToExtendOrder($productsId, $userGroups); CCatalogDiscount::SetProductSectionsCache($productsId); CCatalogDiscount::SetDiscountProductCache($productsId, [ 'IBLOCK_ID' => $iblockId, 'GET_BY_ID' => 'Y', ]); потом заполнение цен в цикле (инфа уже загружена) $product['PRICES'] = CIBlockPriceTools::GetItemPrices( $iblockId, $prices, $product, true, ['CURRENCY_ID' => $currency] ); $product['MIN_PRICE'] = CIBlockPriceTools::getMinPriceFromList($product['PRICES']); $product['CAN_BUY'] = CIBlockPriceTools::CanBuy($iblockId, $prices, $product); сори за форматирование)
еще, не знаю нужно ли оно, на стадии "предзагрузки всякого" загрузка свойств CCatalogDiscount::SetProductPropertiesCache($productId, $properties); Catalog\Discount\DiscountManager::setProductPropertiesCache($productId, $properties);
Тут первый метод для старых скидок, второй - для правил корзины?
понятия не имею) но когда раньше делал, вроде обошлось этими двумя методами
вообще да, наверное в каталоге кусок обратной совместимости
Немного есть, но не то, что думаете.
Обсуждают сегодня