замените[CODE](!in_array($arFields["IBLOCK_ID"], array(23,34)))[/CODE]на [CODE]$arFields["IBLOCK_ID"] == 23[/CODE]
09.08.2018 15:58:11
[QUOTE]a.costuchenko написал:
Требуется чтобы элементы инфоблоков, идентификаторы которых указаны в массиве, в данном случае это инфоблок "Новости" с идентификатором 23, и инфоблок "Архив новостей" с идентификатором 34, копировались бы в инфоблок "Архив новостей", а исключать их не нужно.[/QUOTE] А у вас как раз условие наоборот. Кроме того, копирование элементов инфоблока 34 в него же при добавлении: [QUOTE]и инфоблок "[B]Архив новостей[/B]" с идентификатором 34, копировались бы в инфоблок "[B]Архив новостей[/B]"[/QUOTE] приведет к рекурсии и падению сервера. |
|
|
08.08.2018 15:18:57
[QUOTE]Сергей Тюленев написал:
Если убрать параметр (Bitrix\Main\Entity\Event $event) - все возвращается в норму. Но мне нужен этот параметр![/QUOTE] Нет, не нужен - [URL=https://dev.1c-bitrix.ru/api_help/iblock/events/onafteriblockelementupdate.php]документация[/URL]. Равно как не нужен и метод registerEventHandler. Используйте[CODE]$eventManager->registerEventHandlerCompatible( "iblock", "OnAfterIBlockElementUpdate", $this->MODULE_ID, '\foo_spammer\events\SpammerIBlockElementUpdateHandler', "run" );[/CODE]Кстати, пространство имен вашего класса вы верно указали? |
|
|