Готовые тиражные решения на 1С-Битрикс
Техническая поддержка:
+7-908-208-1965
Отдел продаж, с 7:00 до 18:00 (по Москве)
Звонок по России бесплатный
Вы также можете заказать звонок

FAQ Ресайзер 2

10:11:23 - 24.03.2017

1. Можно ли установить на демо-версию Битрикс?

Нет, модуль устанавливается только на ПО 1С-Битрикс с активной возможностью получения обновлений и технической поддержки, поскольку привязывается к лицензионному ключу Битрикс.
2. Как установить?


Установка автоматическая. После нее модуль можно найти в админке Рабочий стол —> Сервисы —> Ресайзер 2.0 и произвести настройки.
3. Где найти инструкцию?


Подробную справку по настройке модуля смотрите в админке после установки:
Рабочий стол —> Сервисы —> Ресайзер 2.0 —> Справка
Так же прочитайте статью:http://dev.1c-bitrix.ru/community/webdev/user/51651/blog/resizer2-setup/
  
4. Где найти API модуля?

Подробное описание версии 2.0..Описание API модуля для разработчиков..Подробное описание версии 2.5..Подробное описание работы режимов масштабирования с примерами..Ссылка на видео настройки дополнительных фото каталога..Ссылка на видео настройки всплывающих фото на статических страницах..
5. Я изменил настройки Ресайзера, что мне нужно после этого сделать?

1) Сохранить изменения.
2) Сбросить кеш ресайзера.
3) Сбросить кеш тех компонентов битрикс, которые в своей работе используют наборы ресайзера.
6. Размер папки ресайзера на сервере растет почему? Как работает кеш у вашего модуля?


1) Сначала кеш должен один раз создастся на сервере для всех фото, которые показываются через Ресайзер.
2) После этого размер кеша перестанет расти - пока не будут загружены новые фото. 
3) Картинки в хорошем качестве занимают больше места на сервере. 
4) Если происходит переполнение, то можно либо увеличить размер места на диске, либо уменьшать качество (размеры в наборах) фото ресайзера.
7. Модуль не работает


Часто работе модуля мешает некорректное подключение библиотеки jQuery в шаблоне сайта, например:

его необходимо заменить на правильное подключение jQuery через API 1С-Битрикс:
CJSCore::Init(array("jquery"));
и все заработает! 
Если не помогло - пишите в нашу техническую поддержку:http://portal.yenisite.ru/support/ (необходимо зарегистрироваться) 
8. Как подключить модуль, если необходим только путь до сжатой картинки? (Вызов самой картинки через компонент необязателен)


В качестве примера рассмотрим компонент catalog.top в стандартном шаблоне eshop

Первое что необходимо сделать - создать наборы для каждого типа выводимых изображений.
Например в "Трендах сезона" выводятся изображения шириной 113px. Т.к. изображения квадратные, то высота будет равна тоже 113px (http://prntscr.com/6tzpbm)
Соответственно необходимо создать набор (http://prntscr.com/6tzqm4). Заметьте ID набора - 8, он понадобится нам в дальнейшем

Далее нужно приспособить данный набор для вывода в этом компоненте (catalog.top - шаблон для секции (section))
Копируем шаблон компонента.

Далее ищем вызов картинки для данного шаблона (файл - /bitrix/templates/ШАБЛОН САЙТА/components/bitrix/catalog.top/НАЗВАНИЕ СКОПИРОВАННОГО ШАБЛОНА/section/template.php) (http://prntscr.com/6tzt0e)

Т.к. вывод картинки в данном шаблоне осуществляется через стили, то вывод компонента здесь будет неуместен и нам необходимо обратиться к API модуля для получения пути до сжатых изображений. Для этого, в файле result_modifier.php ( /bitrix/templates/ВАШ ШАБЛОН/components/bitrix/catalog.top/НАЗВАНИЕ СКОПИРОВАННОГО ШАБЛОНА) в самом конце перед закрывающим тегом ?> добавляем следующий код:

//Подключаем модуль ресайзера
if (CModule::IncludeModule('yenisite.resizer2'))
{
foreach ($arResult['ITEMS'] as $key => $arItem) //создаем цикл по всем элементам массива c товарами
{
//присваиваем значения конечному результирующему массиву arResult
$arResult['ITEMS'][$key]['PREVIEW_PICTURE']['SRC'] = CResizer2Resize::ResizeGD2($arItem['PREVIEW_PICTURE']['SRC'],8); //Вызываем метод сжатия для изображения (цифра 8 говорит об ID набора, который мы создали на первом этапе)
//в данном случае вызываем метод сжатия если есть вторая картинка (!empty($arItem['PREVIEW_PICTURE_SECOND'])) если ее нет, то присваиваем значение PREVIEW_PICTURE
$arResult['ITEMS'][$key]['PREVIEW_PICTURE_SECOND']['SRC'] = !empty($arItem['PREVIEW_PICTURE_SECOND']) ? CResizer2Resize::ResizeGD2($arItem['PREVIEW_PICTURE_SECOND']['SRC'],8) : $arResult['ITEMS'][$key]['PREVIEW_PICTURE']['SRC'];
}
}


$arResult['ITEMS'][$key]['PREVIEW_PICTURE']['SRC'] - свойство в котором храниться путь до перовой картинки
$arResult['ITEMS'][$key]['PREVIEW_PICTURE_SECOND']['SRC'] - свойство в котором хранится путь до второй картинки

Они выводятся в шаблоне (это видно в пункте 3). В этом коде по сути идет переприсваивание исходного пути (с несжатой картинкой) к пути к сжатой картинкой. Тем самым в шаблон попадут те же свойства только теперь уже путь в них будет указывать на сжатую картинку.
Сбрасываем кеш страницы и смотрим результат

ВНИМАНИЕ! Данный код уместен для компонента catalog.top, чтобы создать аналогичные картинки для других компонентов необходимо проделать все этапы (от наборов до внедрения в шаблон). Причем внедрение в шаблон следует делать с осторожностью т.к. свойства в которых хранятся и выводятся картинки могут отличаться.
9. Что такое набор?


Набор - параметры сжатия картинки, в разных частях сайта одна и та же картинка может выводиться по разным наборам, например, на главной в баннере будем использовать набор с параметрами 400*400 пикс а на детальной ту же самую картинку обработаем другим набором параметрами 300*300 пикс. Наборы можно увидеть в админпанели настроек ресайзера (http://prntscr.com/6zsjrj)
10. Как установить различные водяные знаки для разных из сайтов? (В режиме многосайтовости)


В настройках набора устанавливаем конкретный водяной знак для данного набора (http://prntscr.com/6zska6). Далее используем разные наборы на разных сайтах.
11. Почему не сохраняются настройки наборов?


Настройки наборов могут не сохраняться по причине отключенного управляемого кеша на сайте.
12. Как загрузить превью-картинки в облачное хранилище?
Для того, чтобы переместить файловый кеш Ресайзера в облачное хранилище, необходимо зарегистрировать аккаунт в одном из таких хранилищ, которые поддерживаются платформой 1С-Битрикс, настроить подключение к своему облачному хранилищу в административной части вашего сайта и задать необходимые правила для отбора файлов в облачное хранилище. 
Настройка и работа с облачными хранилищами подробно освещена в учебных курсах и документации 1С-Битрикс.

Для того, чтобы кеш Ресайзера загружался в облако, в правилах облачного хранилища необходимо указать модуль "yenisite.resizer2".

4cd29ce5ecbf7a2c831e8732fd32c01f.png


В списке правил нельзя оставлять пустые поля, это приведет к загрузке в облако всех файлов от всех модулей.

d1b8b9cf276e20f366dd625f2b53e7ea.png

Желательно не указывать модуль iblock - если исходные изображения будут выгружены в облако, тогда Ресайзеру придется каждый раз скачивать каждую картинку из облака при необходимости создать уменьшенную копию или копию с водяным знаком. Это может сказаться негативно на времени выполнения первых хитов, когда Ресайзер еще не создал свой кеш.

Также, если выполнение первых хитов с генерацией кеша занимает неприлично много времени, можно деактивировать облачное хранилище. Пройти по страницам сайта, чтобы сгенерировать кеш ресайзера локально. Затем снова активировать облачное хранилище и переместить в него созданные файлы.


13. У ресайзенных фото черный фон
Если у изображения оригинала нет черного фона, а у ресайзенной миниатюры появляется черный фон, проверьте следующее:

Включена ли у используемого набора Ресайзера конвертация расширения? Возможна ситуация, что исходное (оригинальное) изображение хранится в формате PNG с прозрачным фоном, и у используемого набора включена конвертация в JPG. Формат JPG не поддерживает использование прозрачных областей на картинке

Для решения данного вопроса мы предлагаем 2 варианта:
1) У используемого набора набора Ресайзера отключить принудительную конвертацию какой-либо формат. Тогда ресайзенные изображения будут создаваться в том же расширении, что и оригинал (рекомендуем этот вариант)
2) У используемого набора набора Ресайзера включить приоритет "Вписать с заливкой оставшихся областей", тогда прозрачные области будут залиты цветом выбранным в настройках (по-умолчанию белый)
14. Как узнать какой набор ресайзера отвечает за ту или иную картинку
Что бы узнать какой набор Ресайзера выводит картинку, нужно:
Нажать правой кнопкой мыши на картинку и нажать "Посмотреть код" Скриншот
В открывшемся окне показан набор ресайзера в самой ссылке к изображению: Скриншот 
В нашем случае номер набора 120
15. Как заменить иконки в блоке преимущества?
Иконки в блоке преимущества загружаются из самого шаблона:
https://www.screencast.com/t/QCiSvysv

Поэтому есть 2 пути:
1) По этому же пути загрузить свои иконки с таким же названием.
2) Либо загрузить иконки в любую папку на сайте, а затем, в файле benefits.php прописать путь до иконки:
https://www.screencast.com/t/eHwrkXIB8wDE

Константа <?=SITE_TEMPLATE_PATH?> определяет путь до шаблона, это значит, что она обращается по пути bitrix/templates/ПАПКА_ВАШЕГО_ШАБЛОНА

Аналогично делается и для иконок в боке, которые выводятся на детальной странице.
16. Товар из деактивированного раздела есть в поиске
Если вы деактивировали раздел, а товары из него можно найти через модуль поиска:
Элементы в разделе не деактивируются автоматически. Их нужно деактивировать в ручную или при помощи API продукта.
Можно выбрать элементы конкретного раздела (подраздела) через CIBlockElement::GetList
http://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/getlist.php

Затем в цикле деактивировать каждый CIBlockElement::Update:
http://dev.1c-bitrix.ru/api_help/iblock/classes/ciblockelement/update.php

Если у вас возникнут сложности-наш отдел внедрений поможет вам написать скрипт для деактивации всех товаров в деактивированном разделе.