Opencart: change image folder

opencart, php

Solution

I had the same problem.

File /catalog/model/tool/image.php

Line 51 && 53 aprox:

return $this->config->get('config_ssl') . 'image/' . $new_image;

return $this->config->get('config_url') . 'image/' . $new_image;

And File

/catalog/controller/common/header.php

Line 24 && 30 Aprox

$this->data['icon'] = $server . 'image/' . $this->config->get('config_icon');
$this->data['logo'] = $server . 'image/' . $this->config->get('config_logo');

Those lines are overwritting your configuration.

You can simply replace 'image' or do some trick to add DIR_IMAGE relevant information.

I guess in later versions they will correct this error.

regards, Alex

Problem

I've got OpenCart 1.5.5.1 and tried to change the image folder with unexpected results. My opencart is installed on `www.example.com/opencart/` I changed the config.php and `admin/config.php` as follows: ``` // HTTP define('HTTP_SERVER', 'http://example.com/opencart/'); // HTTPS define('HTTPS_SERVER', 'https://example.com/opencart/'); // DIR define('DIR_APPLICATION', '/home/example/public_html/opencart/catalog/'); define('DIR_SYSTEM', '/home/example/public_html/opencart/system/'); define('DIR_DATABASE', '/home/example/public_html/opencart/system/database/'); define('DIR_LANGUAGE', '/home/example/public_html/opencart/catalog/language/'); define('DIR_TEMPLATE', '/home/example/public_html/opencart/catalog/view/theme/'); define('DIR_CONFIG', '/home/example/public_html/opencart/system/config/'); define('DIR_IMAGE', '/home/example/public_html/opencart/image2/'); define('DIR_CACHE', '/home/example/public_html/opencart/system/cache/'); define('DIR_DOWNLOAD', '/home/example/public_html/opencart/download/'); define('DIR_LOGS', '/home/example/public_html/opencart/system/logs/'); ``` When I look at the site now, all the images are gone, not broken, but gone. After I update the folder name to "image2" the images show up broken and when I look at the Image URL I see: ``` http://example.com/opencart/image/data/Logos/logo.png ``` So somehow it is still looking for the "image" folder. It gets even stranger when I move the image folder outside the opencart folder, e.g. from `/home/example/public_html/opencart/image2/` to `/home/example/public_html/image2/` Then the image url is still: ``` example.com/opencart/image/data/Logos/logo.png ``` When I change the HTTP_SERVER line in config.php to `http://example.com/opencart2` The images are still broken but the image url is now: ``` example.com/opencart2/image/data/Logos/logo.png ``` Can someone tell me what I'm doing wrong? Am I too naive thinking that the DIR_IMAGE define points to the folder where the images are? Anyway, the reason I'm doing this is that I want two opencart shops sharing the same image folder. So: Shop 1: ``` /home/example/public_html/opencart/ ``` Shop 2: ``` /home/example/public_html/opencart2/ ``` Image folder: ``` /home/example/public_html/image/ ``` Is there any way of doing this? Thanks in advance

Original source