Всем добрый вечер. Использую Битрикс версии 12.5.1.
Собственно в нем есть компонент, выводящий товары каталога на странице раздела в виде превью. Сейчас компонент работает так: проверяет, есть ли у товара торговые предложения (в дальнейшем ТП), и если они есть, берет из массива ТП минимальную цену и показывает ее. Если ТП нет, то он берет цену из самой карточки товара.
Все бы хорошо, но если назначить на группу товаров скидку, то у товаров с ТП показывается только минимальная цена получаемая в результате скидки, а вот у товаров без ТП выводится старая цена (перечеркнутая) и новая со скидкой.
Как я понял в меру своих возможностей, за вывод цен в компоненте отвечает этот кусок кода:
Собственно вопрос, как сделать чтобы компонент не проверял, есть ли у товара ТП, а сразу выводил цену из карточки товара? Мне эта проверка не нужна, так как все ТП для определенного товара имеют одинаковую цену.
Собственно в нем есть компонент, выводящий товары каталога на странице раздела в виде превью. Сейчас компонент работает так: проверяет, есть ли у товара торговые предложения (в дальнейшем ТП), и если они есть, берет из массива ТП минимальную цену и показывает ее. Если ТП нет, то он берет цену из самой карточки товара.
Все бы хорошо, но если назначить на группу товаров скидку, то у товаров с ТП показывается только минимальная цена получаемая в результате скидки, а вот у товаров без ТП выводится старая цена (перечеркнутая) и новая со скидкой.
Как я понял в меру своих возможностей, за вывод цен в компоненте отвечает этот кусок кода:
Код |
---|
<div class="buy"> <?if(is_array($arElement["OFFERS"]) && !empty($arElement["OFFERS"])) // Product has offers { if ($arElement["MIN_PRODUCT_OFFER_PRICE"] > 0): ?> <div class="price"> <span class="item_price"><?if (count($arElement["OFFERS"]) > 1) echo GetMessage("CATALOG_PRICE_FROM")?> <?=$arElement["MIN_PRODUCT_OFFER_PRICE_PRINT"];?></span> </div> <?endif;?> <a href="jav * ascript:void(0)" class="buy_button bt3 addtoCart" id="catalog_add2cart_offer_link_<?=$arElement['ID']?>" oncl ick="return showOfferPopup(this, 'list', '<?=GetMessage("CATALOG_IN_CART")?>', <?=CUtil::PhpToJsObject($arElement["SKU_ELEMENTS"])?>, <?=CUtil::PhpToJsObject($arElement["SKU_PROPERTIES"])?>, <?=CUtil::PhpToJsObject($arResult["POPUP_MESS"])?>, 'cart');"><?echo GetMessage("CATALOG_BUY")?></a> <? } else // Product doesn't have offers { $numPrices = count($arParams["PRICE_CODE"]); foreach($arElement["PRICES"] as $code=>$arPrice):?> <?if($arPrice["CAN_ACCESS"]):?> <div class="price"> <?if ($numPrices>1):?><p style="padding: 0; margin-bottom: 5px;"><?=$arResult["PRICES"][$code]["TITLE"];?>:</p><?endif?> <?if($arPrice["DISCOUNT_VALUE"] < $arPrice["VALUE"]):?> <span class="discount-price"><?=$arPrice["PRINT_DISCOUNT_VALUE"]?></span><br> <span class="old-price"><?=$arPrice["PRINT_VALUE"]?></span> <?else:?> <?=$arPrice["PRINT_VALUE"]?> <?endif;?> </div> <?endif;?> <?endforeach;?> <?if($arElement["CAN_BUY"]):?> <a href="<?echo $arElement["ADD_URL"]?>" rel="nofollow" class="bt3 addtoCart" oncl ick="return addToCart(this, 'list', '<?=GetMessage("CATALOG_IN_CART")?>', 'noCart');" id="catalog_add2cart_link_<?=$arElement['ID']?>"><?=GetMessage("CATALOG_BUY")?></a> <?elseif ( $arNotify[SITE_ID]['use'] == 'Y'):?> <?if ($USER->IsAuthorized()):?> <noindex><a href="<?echo $arElement["SUBSCRIBE_URL"]?>" rel="nofollow" class="subscribe_link" oncl ick="return addToSubscribe(this, '<?=GetMessage("CATALOG_IN_SUBSCRIBE")?>');" id="catalog_add2cart_link_<?=$arElement['ID']?>"><?echo GetMessage("CATALOG_SUBSCRIBE")?></a></noindex> <?else:?> <noindex><a href="jav * ascript:void(0)" rel="nofollow" class="subscribe_link" oncl ick="showAuthForSubscribe(this, <?=$arElement['ID']?>, '<?echo $arElement["SUBSCRIBE_URL"]?>')" id="catalog_add2cart_link_<?=$arElement['ID']?>"><?echo GetMessage("CATALOG_SUBSCRIBE")?></a></noindex> <?endif;?> <?endif; } ?> </div> |