Здравствуйте.
Возможно кто-то сталкивался с такой проблемой - пытаюсь сделать вновь добавленный каталог торговым, но никак не выходит.
Сами свойства добавляемого ИБ менять при создании получается (OnBeforeIBlockAdd), но там не передается информация о том, является ли ИБ торговым каталогом - для этого нашел функцию CCatalog::Add, но она почему-то не отрабатывает (возвращает true, но если зайти в созданный ИБ, то он не будет помечен как торговый каталог).
Возможно кто-то сталкивался с такой проблемой - пытаюсь сделать вновь добавленный каталог торговым, но никак не выходит.
Сами свойства добавляемого ИБ менять при создании получается (OnBeforeIBlockAdd), но там не передается информация о том, является ли ИБ торговым каталогом - для этого нашел функцию CCatalog::Add, но она почему-то не отрабатывает (возвращает true, но если зайти в созданный ИБ, то он не будет помечен как торговый каталог).
Код |
---|
<? AddEventHandler("iblock", "OnBeforeIBlockAdd", Array("MyClass", "OnBeforeIBlockAddHandler")); AddEventHandler("iblock", "OnAfterIBlockAdd", Array("MyClass", "OnAfterIBlockAddHandler")); AddEventHandler("iblock", "OnBeforeIBlockElementAdd", Array("MyClass", "OnBeforeIBlockElementAddHandler")); class MyClass { function OnAfterIBlockAddHandler(&$arFields) { if($arFields["ID"]>0) { /* помечаем ИБ как торгоывй каталог */ $res_ = CCatalog::Add( array("IBLOCK_ID"=>$arFields["ID"],"YANDEX_EXPORT"=>"Y","SUBSCRIPTION"=>"N") ); if(!$res_) { global $APPLICATION; $APPLICATION->throwException("Не удалось выполнить CCatalog::Add"); return false; } } } ... |
Не бойтесь делать того что не умеете. Ковчег построил любитель...Профессионалы построили Титаник