Снятие ограничения на загрузку больших изображений OpenCart

Учитывая, что по умолчанию в OpenCart стоит ограничение на загрузку изображений с размером файла более 300Кб, а так же есть ограничение на разрешение картинки больше чем 1000 на 1000 пикселей, очень часто приходится сталкиваться с проблемой загрузки файлов.Оупенкарт логотип

Для того, чтобы изменить ограничение на размер и разрешение, Вам необходимо изменить следующие файлы:

1. Для снятия ограничения на размер файла изменим контроллер admin/controller/common/filemanager.php

Находим строки:

if ($this->request->files['image']['size'] > 300000) {
 $json['error'] = $this->language->get('error_file_size');
}

Изменяем в них значение 300000, а это именно размер в байтах, на то, который нам нужен «в байтах». В данном случае это 5Мб = 5242880 байт. Теперь код выглядит вот так:

if ($this->request->files['image']['size'] > 5242880) {
 $json['error'] = $this->language->get('error_file_size');
}

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

if (!isset($json['error'])) { 
 if(substr($this->request->files['image']['type'],0,5)=='image'){
 $imageinfo = getimagesize($this->request->files['image']['tmp_name']);
 if($imageinfo[0]>1000 || $imageinfo[1]>1000){
 exec('convert -colorspace RGB "'.$this->request->files['image']['tmp_name'].'" 
-resize 1000x1000 "'.$this->request->files['image']['tmp_name'].'"');
 }
 }
 if (@move_uploaded_file($this->request->files['image']['tmp_name'], $directory . '/' 
. basename($this->request->files['image']['name']))) { 
 $json['success'] = $this->language->get('text_uploaded');
 } else {
 $json['error'] = $this->language->get('error_uploaded');
 }
}

Просто измените значения $imageinfo[0]>1000 || $imageinfo[1]>1000 на требуемые Вам.

Подписаться на нашу новостную рассылку Вы можете здесь.

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

2017-12-05T15:10:27+00:00 Июль 31st, 2012|