Разные цены для разных сайтов 1С-Битрикс

, Михаил

В /bitrix/php_interface/init.php


<?php 
global $TYPE_PRICE;
$TYPE_PRICE 3;
 //ID цены на 1м сайте
?>

В /bitrix/php_interface/s2/init.php добавляем обработчик:


<?php 
AddEventHandler("catalog""OnGetOptimalPrice"'OnGetOptimalPriceHandler');
global $TYPE_PRICE;
$TYPE_PRICE 4;
  //ID цены на 2м сайте
function OnGetOptimalPriceHandler($productID$quantity 1$arUserGroups = array(), $renewal "N"$arPrices = array(), $siteID "s2"$arDiscountCoupons false) {
	    CModule::IncludeModule("iblock");
	    Cmodule::IncludeModule('catalog');
	    global $TYPE_PRICE;
	    $db_res CPrice::GetList(array(), array("PRODUCT_ID" => $productID"CATALOG_GROUP_ID" => $TYPE_PRICE));
	    if ($ar_res $db_res->Fetch()) {
		        $price $ar_res['PRICE'];
		        $currency $ar_res['CURRENCY'];
		        $arResult = array(
		            'PRICE' => array(
		                'PRICE' => $price,
		                'CURRENCY' => $currency,
		            )
		        );
		        $arDiscounts CCatalogDiscount::GetDiscount($productID15);
		 // ID Инфоблока с торговыми предложениями (в данном случае)
		        if ($arDiscounts) {
			            foreach ($arDiscounts as $arDiscount) {
				                $arResult['DISCOUNT_LIST'][] = array(
				                    'VALUE_TYPE' => $arDiscount['VALUE_TYPE'],
				                    'VALUE' => $arDiscount['VALUE'],
				                    'CURRENCY' => $arDiscount['CURRENCY']
				                );
				}
			}
		} else {
		        return true;
		}
	    return $arResult;
	}
?>