Документация для разработчиков
Темная тема

OnAfterAdd

void функция-обработчик(
	\Bitrix\Catalog\Model\Event $event
);

Событие OnAfterAdd вызывается в методе \Bitrix\Catalog\Model\Product::add после попытки записать товар в ORM-таблицу. Обработчик может проверить результат операции и получить данные товара.

Параметры события

Параметр Тип Описание
id int|null Идентификатор из результата ORM. При неуспешной записи может содержать null
fields array Поля товара. После успешной записи содержит данные из результата ORM
external_fields array Дополнительные поля, которые модель использует вне ORM-таблицы товара
actions array Действия, подготовленные моделью для выполнения после добавления товара
success bool Результат записи товара: true, если ORM-операция завершилась успешно, иначе false

Событие отправляется после попытки записи независимо от ее результата. Результат обработчика не изменяет результат добавления. Внешние действия модели запускаются после события только при успешной записи.

Пример

Обработчик записывает в журнал идентификатор успешно добавленного товара.

<?php

use Bitrix\Catalog\Model\Event;
use Bitrix\Main\Diag\Debug;
use Bitrix\Main\EventManager;

EventManager::getInstance()->addEventHandler(
	'catalog',
	'Bitrix\Catalog\Model\Product::OnAfterAdd',
	static function (Event $event): void
	{
		if ($event->getParameter('success') === true)
		{
			Debug::writeToFile(
				$event->getParameter('id'),
				'Added product ID',
				'catalog-product.log'
			);
		}
	}
);

Продолжить изучение



Была ли эта страница полезна?

Пользовательские комментарии

Помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2026, «1С-Битрикс», 2026
Наверх