Для магазина существуют общие настройки для установки размеров иконок.
А у категорий есть настройка "Просмотры" -> "Использовать собственное отображение", где можно установить требуемое количество колонок в сетке. Если установить меньше 4 колонок, то изображение будет слишком маленьким.
Как для "собственного отображения" генерировать индивидуальные размеры изображений не изменяя стандартных настроек?
Нужно изменить размер изображения в зависимости от того, на сколько колонок настроена сетка. Когда 4 колонки то 150x150 px, когда 3 колонки, то 380x380 px
Нашел кое-что. За генерацию изображения отвечает функция fn_image_to_display, в которую передается 3 аргумента: изображение, ширина и высота.
В шаблоне design/themes/responsive/templates/views/products/components/product_icon.tpl подключается шаблон design/themes/responsive/templates/common/image.tpl в который и передаются эти 3 аргумента.
Осталось разобраться как добавить в глобальные настройки размеры для 1, 2 и 3 колонок.
И как сообщить шаблону сколько на данный момент колонок на странице.
Нужно изменить размер изображения в зависимости от того, на сколько колонок настроена сетка. Когда 4 колонки то 150x150 px, когда 3 колонки, то 380x380 px
Модификация кода “на коленке”, что бы миниатюры изображений генерировались с размерами отличными от глобальных настроек. В данном случае, если установлено 2 колонки, то ширина и высота будут 380 пикселей. Если 3 колонки, то по 300 пикселей соответственно. Для установки своих значений нужно изменить переменную $image_size в шаблоне.
Измененный код шаблона design/themes/[my_theme]/templates/views/products/components/product_icon.tpl: