Answer the question
In order to leave comments, you need to log in
Bitrix api How to add trade offers to a product?
//"WEIGHT" => $weight
));
echo ' '.$productID.' ';
$arFields = Array(
"CURRENCY" => "RUB", // currency
"PRICE" => $item['info']['price'], // price value
"CATALOG_GROUP_ID" => 1, // price type ID
"PRODUCT_ID" = > $PRODUCT_ID, // Product ID
);
CPrice::Add( $arFields );
so one product is added, but how to make it have many trade offers?
Answer the question
In order to leave comments, you need to log in
To do this, you need to have two infoblocks: goods and trade offers, info on setting up here https://dev.1c-bitrix.ru/learning/course/?COURSE_I...
Working example:
CModule::IncludeModule('iblock');
CModule::IncludeModule('sale');
$ciBlockElement = new CIBlockElement;
// Добавляем товар-родитель, у которго будут торг. предложения
$product_id = $ciBlockElement->Add(
array(
'IBLOCK_ID' => 13, // IBLOCK товаров
'NAME' => "Товар 1",
"ACTIVE" => "Y",
// Прочие параметры товара
)
);
// проверка на ошибки
if (!empty($ciBlockElement->LAST_ERROR)) {
echo "Ошибка добавления товара: ". $ciBlockElement->LAST_ERROR;
die();
}
// добавляем нужное кол-во торговых предложений
$arLoadProductArray = array(
"IBLOCK_ID" => 14, // IBLOCK торговых предложений
"NAME" => "Торговое предложение 1",
"ACTIVE" => "Y",
'PROPERTY_VALUES' => array(
'CML2_LINK' => $product_id, // Свойство типа "Привязка к товарам (SKU)", связываем торг. предложение с товаром
)
// Прочие параметры товара
);
$product_offer_id = $ciBlockElement->Add($arLoadProductArray);
// проверка на ошибки
if (!empty($ciBlockElement->LAST_ERROR)) {
echo "Ошибка добавления торгового предложения: ". $ciBlockElement->LAST_ERROR;
die();
}
// Добавляем параметры к торг. предложению
CCatalogProduct::Add(
array(
"ID" => $product_offer_id,
"QUANTITY" => 9999
)
);
// Добавляем цены к торг. предложению
CPrice::Add(
array(
"CURRENCY" => "RUB",
"PRICE" => 999,
"CATALOG_GROUP_ID" => 1,
"PRODUCT_ID" => $product_offer_id,
)
);
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question