Модуль устанавливается стандартным способом из Маркетплейс.
После установки модуля необходимо перейти в раздел «Настройки -> Настройки продукта-> Настройки модулей -> Предварительная нарезка фотографий элементов инфоблока» и добавить «правила» обработки изображений.
Для разработчиков: перед нарезкой изображения вызывается событие OnBeforePreResizeImage (в новом D7 стиле).
Пример обработки анонимным обработчиком:
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'olegpro.preresizer',
'OnBeforePreResizeImage',
function (\Bitrix\Main\Event $e) {
$iblockElement = $e->getParameter('IBLOCK_ELEMENT');
if($iblockElement['IBLOCK_ID'] == 2) {
$rule = $e->getParameter('RULE');
$rule['width'] = 300;
$e->setParameter('RULE', $rule);
return new \Bitrix\Main\EventResult(
\Bitrix\Main\EventResult::SUCCESS,
$e->getParameters()
);
}
}
);
Массив параметров обработчика выглядит (RULE и FILE_ID можно менять)
Array
(
[FILE_ID] => 1
[RULE] => Array
(
[field] => DETAIL_PICTURE
[width] => 250
[height] => 250
[resize_type] => 0
[filters] => {"json" : "format"}
[immediate] => 0
[jpg_quality] =>
)
[IBLOCK_ELEMENT] => Array
(
[DETAIL_PICTURE] => 1
[~DETAIL_PICTURE] => 1
[IBLOCK_ID] => 2
[~IBLOCK_ID] => 2
[ID] => 2
[~ID] => 2
)
)