Opencart (ocStore) 1.5x – кадрирование изображений (превью)

opencart кадрирование миниатюрПродолжаем расширять возможности любимого Opencart (ocStore) 1.5x – в данном материале настроим движок на кадрирование (обрезка) миниатюр товаров и категорий и тем самым избавиться от уродских белых полос в изображениях товара и превью категорий.

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

 

1.Opencart (ocStore) 1.5x кадрирование изображений глобально:

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

catalog/model/tool/image.php

меняем полностью всю функцию:

public function resize($filename, $width, $height, $type = “”) {

На:

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

2. Настройка выборочной обрезки изображений для разных стариц в опенкарт

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

catalog/model/tool/image.php

Только на этот раз не трогаем функцию ресайс, а перед ней добавляем свою:

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

$this->model_tool_image->resize(

и заменяем на

$this->model_tool_image->mycrop(

После чего также не забываем очистить папку кеша изображений.

 

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *