//название товара не пишем
Bitrix\Main\Loader::includeModule("catalog");
$fields = [
'PRODUCT_ID' => $item[offer_id], // ID товара, обязательно
'QUANTITY' => $item[quantity],
'CURRENCY' => Bitrix\Currency\CurrencyManager::getBaseCurrency(),
'LID' => Bitrix\Main\Context::getCurrent()->getSite(),
'PRICE' => $item[price], //твоя кастомная цена
'CUSTOM_PRICE' => 'Y',
];
$r = Bitrix\Catalog\Product\Basket::addProduct($fields);
if (!$r->isSuccess()) {
var_dump($r->getErrorMessages());
}
$order = \Bitrix\Sale\Order::load(38); //загрузим заказ
.....//добавляем товары или производим другие действия
$order->save(); //сохраняем заказ
Какой аналог на старом ядре?
К вопросу привязывается ответ через свойство элемента (ответов может быть несколько, поэтому это множественное поле)
Я правильно понимаю, что стоит увеличить RAM до 25 гигабайт
Стоит ли в качестве первого места работы выбирать компанию, специализирующуюся только на Битриксе?
$arSort = array("PROPERTY_NOSKLAD"=>"ASC", "PROPERTY_PRIORITET"=>"DESC", "shows"=>"DESC");
if (
isset($_GET["sort"]) && isset($_GET["method"]) && (
$_GET["sort"] == "name" ||
$_GET["sort"] == "catalog_PRICE_1" ||
$_GET["sort"] == "shows" ||
$_GET["sort"] == "created")){
$arSort = array($_GET["sort"]=>$_GET["method"]);
}
$res = CIBlockElement::GetList($arSort, Array($arrFilter, $arFilter), false, Array("bShowAll"=>false, "nPageSize"=>18, "iNumPage"=>$pn), $arSelect);
Cmodule::IncludeModule('catalog');
$el = new CIBlockElement;
if (!empty($arElement["PROPERTIES"]["NOT_FOR_SALE"]["VALUE"])) {
$arFields = array("QUANTITY" => 0, "CAN_BUY_ZERO"=> "N");
CCatalogProduct::Update($ID, $arFields);
} else {
$arFields = array("CAN_BUY_ZERO"=> "D");
CCatalogProduct::Update($ID, $arFields);
}
$rsOffers = CIBlockElement::GetList(
array("sort" => "ASC"), array('ID' => $tpred["ID"]),false,false,
array("ID", "IBLOCK_ID", "CATALOG_PRICE_1", "NAME","ACTIVE","PROPERTY_SIZE_IMG_SIGN","PROPERTY_MINIMUM_PRICE"));
.........
while($arElement = $rsOffers->GetNextElement()){
$arFields = $arElement->GetFields();
.........
echo $price = round($arFields['CATALOG_PRICE_1']);
.........
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_before.php");
CModule::IncludeModule("iblock");
$arFields[0] = Array(
"NAME" => 'Название',
"ACTIVE" => "Y",
"SORT" => "500",
"CODE" => "CODE",
"PROPERTY_TYPE" => "N", // тип смотри внизу описания
"IBLOCK_ID" => $IBLOCK_ID
);
$ibp = new CIBlockProperty;
if($PropID = $ibp->Add($arFields[0])) {echo 'OK: '.$PropID;}
else {echo 'Error: '.$ibp->LAST_ERROR;};