Здравствуйте!
Необходимо при добавлении товара в корзину добавлять ему некоторое свойство.
В старом ядре я делал так:
В новом ядре этот способ не работает из-за
Самое подходящее событие из нового ядра: OnSaleBasketItemBeforeSaved
Но с ним возникает несколько вопросов:
1) почему это событие вызывается для уже имеющихся товаров в корзине? Зачем их пересохранять?
2) это событие вызывается уже после
А мне нужно добавлять свойство (выполнить свой код) до выполнения add(). Какое событие использовать в этом случае?
3) или как приведенный выше код из старого ядра переписать с использованием нового ядра?
Необходимо при добавлении товара в корзину добавлять ему некоторое свойство.
В старом ядре я делал так:
Код |
---|
AddEventHandler("sale", "OnBeforeBasketAdd", "OnMyBeforeBasketAdd"); function OnMyBeforeBasketAdd(&$val) { $val['PROPS'][] = array( "NAME" => "Название", "SORT" => 2, "CODE" => "CODE", "VALUE" => "Значение", ); } |
Скрытый текст | ||
---|---|---|
|
Самое подходящее событие из нового ядра: OnSaleBasketItemBeforeSaved
Но с ним возникает несколько вопросов:
1) почему это событие вызывается для уже имеющихся товаров в корзине? Зачем их пересохранять?
2) это событие вызывается уже после
Код |
---|
$result = \Bitrix\Sale\Compatible\BasketCompatibility::add($arFields); |
А мне нужно добавлять свойство (выполнить свой код) до выполнения add(). Какое событие использовать в этом случае?
3) или как приведенный выше код из старого ядра переписать с использованием нового ядра?