OnUpdate
void функция-обработчик( \Bitrix\Catalog\Model\Event $event );
Событие OnUpdate вызывается в методе \Bitrix\Catalog\Model\Product::update после проверки и подготовки полей, но до записи изменений в ORM-таблицу. Событие позволяет получить данные, с которыми модель начинает обновление.
Параметры события
| Параметр | Тип | Описание |
|---|---|---|
| id | int |
Идентификатор обновляемого товара |
| fields | array |
Проверенные и подготовленные поля товара |
| external_fields | array |
Дополнительные поля, которые модель использует вне ORM-таблицы товара |
| actions | array |
Действия, которые модель должна выполнить после обновления товара |
Результат обработчика не изменяет данные и не отменяет обновление товара.
Пример
Обработчик записывает в журнал идентификатор товара и подготовленные изменения.
<?php
use Bitrix\Catalog\Model\Event;
use Bitrix\Main\Diag\Debug;
use Bitrix\Main\EventManager;
EventManager::getInstance()->addEventHandler(
'catalog',
'Bitrix\Catalog\Model\Product::OnUpdate',
static function (Event $event): void
{
Debug::writeToFile(
[
'id' => $event->getParameter('id'),
'fields' => $event->getParameter('fields'),
],
'Product fields before update',
'catalog-product.log'
);
}
);
Продолжить изучение
Была ли эта страница полезна?
Что можно улучшить?
Пользовательские комментарии
Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2026, «1С-Битрикс», 2026