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

FAQ Ресайзер 2

19:45:27 - 14.11.2017

1. Как показать/скрыть свойства СКУ в умной фильтре?
Перейдите в параметры необходимого раздела:
2017-09-01_12-39-39.png
Во вкладке "Свойства элементов" в списке "Свойства торговых предложений" напротив нужных свойств поставьте галочки:
2017-09-01_12-41-22.png
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. Не работает ресайзер на втором сайте в режиме многосайтовости
Модуль ресайзер устанавливается на платформу 1 раз.
При установке в режиме многосайтовости, убедитесь-что вы создали символьные ссылки не только на папку upload и bitrix, а также на папку resizer2.
Подробнее про символьные ссылки на многосайтовости



Предположим, вы хотите-чтобы на разных сайтах в карточке товара на фото выводились разные водяные знаки.
Для этого необходимо создать дополнительный набор для второго сайта,  установить ему необходимый водяной знак.
Пример:

2017-05-26_1350.png

2017-05-26_1352.png


15. Как вывести водяной знак
Для того, чтобы вывести водяной знак необходимо:
1) В настройках ресайзера внести необходимые параметры водяного знака
Водяной знак 1

2) Переходим в наборы и заходим в параметры набора, для которого хотим вывести водяной знак
Водяной знак 2

3) Ставим галочку в пункте «Водяной знак» и сохраняем
Водяной знак 3

4) Сбрасываем кеш ресайзера 
Водяной знак 4
16. Как отображать фото с прозрачным фоном через ресайзер без белой заливки
Чтобы фотографии отображались без заливки необходимо сделать следующее:
1. Зайти в набор Ресайзера 2 (Для каждого набора настраивается отдельно):2017-11-06_15-28-32.png

2. Напротив параметра "Приоритет" из выпадающего списка выберите "Вписать без заливки оставшихся областей"
2017-11-06_15-34-11.png

3. Затем сбросить кеш Ресайзера и кеш сайта
2017-11-08_13-50-11.png
2017-11-08_13-52-09.png
17. Периодически пропадает авторизация пользователя на сайте
Возможные проблемы и способы их решения:
  • Лишние переносы строк (или иные символы) в скриптах конфигурации. Необходимо убедиться, что в коде файлов dbconn.php, init.php и after_connect.php, расположенных в папке bitrix/php_interface, не содержится переносов строк перед "".
  • Файлы с сессиями продукта создаются, но PHP не хватает прав, чтобы к ним обратиться. Попробуйте в файле /bitrix/php_interface/dbconn.php закомментировать строку:
    //@umask(~BX_DIR_PERMISSIONS);
  • Установлен лимит времени на бездействие пользователя, при превышении которого сессия удаляется. Вам необходимо в настройках группы пользователя на вкладке Безопасность увеличить значение Время жизни сессии (минут).

    Значение по умолчанию можно изменить в файле php.ini (Bitrix Environment\Apache2\zendserver\etc): параметр session.gc_maxlifetime.

  • Значение параметра Маска сети для привязки сессии в настройках безопасности группы пользователей. Если оно равно, например, 255.255.255.255, то это означает, что при изменении IP пользователя, авторизация будет сброшена.
  • Значение параметра session.cookie_domain в файле php.ini на сервере. Если оно задано - убедитесь, что оно соответствует URL вашего сайта. Если значение параметра session.cookie_domain равно www.site.ru, а Вы обращаетесь к системе по URL site.ru, то в этом случае сессия не будет сохранена, и, соответственно, авторизация не сохранится.

    Для решения проблемы необходимо установить в настройках PHP корректное значение параметра session.cookie_domain.

  • Неверно прописан домен в настройках главного модуля и для сайта отдельно.

    Проверьте значение поля URL сайта на странице административного режима Настройки > Настройки продукта > Настройки модулей > Главный модуль.

    Проверить значение поля URL сервера можно, открыв настройки нужного сайта на странице административного раздела Настройки > Настройки продукта > Сайты > Список сайтов.

    Примечание: также одной из причин может быть некорректное значение в параметрах сайта поля Путь к корневой папке веб-сервера для этого сайта, либо Доменное имя. Доменное имя можно сменить или удалить путем внесения изменений в файл /hosts.

  • При переносе сайта не скопировался файл /.access.php. В данном файле хранятся права групп пользователей к сайту, и если данного файла нет, то для всех пользователей право доступа устанавливается как Запрещен.

    Проблема решается одним из способов:

    • вам надо на странице административного раздела Контент > Структура сайта > Файлы и папки в меню действий корневой папки сайта выбрать пункт Свойства папки и на вкладке Доступ установить для группы Все пользователи (в том числе неавторизованные) право Чтение;
    • в корневую папку сайта загрузить файл .access.php со следующим содержанием:
      <? $PERM["/"]["*"]="R"; ?>
      
  • Если при многосайтовости вас выкидывает на форму авторизации при переходе по публичным страницам сайта, проверьте содержимое файла .access.php на идентичность следующему коду:
    <?
    $PERM["/"]["*"]="R";
    ?>
    
  • Авторизация не учитывается на вашем домене.

    На закладке Авторизация страницы настроек главного модуля (Настройки > Настройки продукта > Настройки модулей > Главный модуль) поставьте галочку в поле Распространять авторизацию на все домены.

  • Проблема может быть в работе сервера (нужна поддержка сессий в php, должна быть указана папка сохранения сессий и права на запись в эту папку).

    Проверьте исправность работы сервера с сессиями с помощью данного скрипта и в случае наличия неполадок обратитесь к администратору сервера.

18. Что делать-если вы забыли пароль администратора?

Для восстановления пароля администратора сохраните следующий скрипт в php-файл c любым именем:

<?
require($_SERVER['DOCUMENT_ROOT']."/bitrix/header.php");
echo $USER->Update(1,array("PASSWORD"=>'Bitrix*123456'));
echo $USER->LAST_ERROR;
require($_SERVER['DOCUMENT_ROOT']."/bitrix/footer.php");
?>

Закачайте через FTP на сайт и откройте его в браузере. После этого у пользователя с ID=1 (по умолчанию - администратор) установится пароль: Bitrix*123456

После этого авторизуйтесь и в панели управления установите свой пароль.

Внимание! Обязательно удалите этот файл после восстановления пароля!

Если доступ для неавторизованных пользователей закрыт, то перед процедурой восстановления пароля надо поправить файл .access.php в корне сайта, заменив:

$PERM["/"]["*"]="D";
на:
$PERM["/"]["*"]="R";
А после сброса вернуть изменения назад. 
1. Как узнать какой набор ресайзера отвечает за ту или иную картинку
Что бы узнать какой набор Ресайзера выводит картинку, нужно:
Нажать правой кнопкой мыши на картинку и нажать "Посмотреть код" Скриншот
В открывшемся окне показан набор ресайзера в самой ссылке к изображению: Скриншот 
В нашем случае номер набора 120
2. Включить расширенный вывод ошибок можно в файле настроек .settings.php
Если вы наблюдаете такую ошибку: Включить расширенный вывод ошибок можно в файле настроек .settings.php

Вам необходимо перейти: Административная панель - Файлы и папки - bitrix - .setting.php
8.png


Найти строчку: 'debug' => false,
false заменить на true

9.png
3. Как сделать бекап сайтов, находящихся в многосайтовости?

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

Резервное копирование при использовании многосайтовости имеет свои особенности:

  • Можно выбирать сайты для копирования, оставляя в архивах только нужные вам проекты.
  • Восстановление сайтов потребует дополнительных действий со стороны администратора.
  • Этот способ копирования работает только для сайтов DOCUMENT_ROOT которых различны. (То есть для многосайтовости на разных доменах)
  • База данных полностью копируется в архив. Даже тех сайтов, которые не были указаны в чекбоксах выбора сайтов.

При выборе сайтов для архивирования учтите, что в состав архива полностью копируется только первый по сортировке сайт (из выбранных) в списке сайтов. Соответственно, при восстановлении полностью в работоспособном состоянии восстанавливается только этот сайт.

Публичная часть остальных сайтов сохраняется в архиве в папках вида /bitrix/backup/sites/_ID_сайта_. После распаковки архива администратор должен будет вручную перенести папки публичной части архивируемых сайтов в соответствующие папки на сервере. (В процессе распаковки появится предупреждение, что архив содержит несколько публичных частей.)

Многосайтовость надо восстановить вручную (восстановить симлинки). Только после этого остальные сайты будут работоспособны.