Opencart:更改图像文件夹

时间:2014-05-30 01:30:16

标签: php opencart

我已获得OpenCart 1.5.5.1,并尝试更改图片文件夹,但结果出乎意料。

我的opencart已安装在www.example.com/opencart/

我更改了config.php和admin/config.php,如下所示:

// 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/');

当我现在看这个网站时,所有的图像都消失了,没有破碎,但已经消失了。 将文件夹名称更新为" image2"图像显示破碎,当我看到图像URL时,我看到:

 http://example.com/opencart/image/data/Logos/logo.png

所以它仍然在寻找"图像"夹。 当我将图像文件夹移动到opencart文件夹之外时,它变得更加奇怪,例如从/home/example/public_html/opencart/image2//home/example/public_html/image2/

然后图片网址仍然是:​​

example.com/opencart/image/data/Logos/logo.png

当我将config.php中的HTTP_SERVER行更改为http://example.com/opencart2时 图像仍然破碎,但图像网址现在是:

example.com/opencart2/image/data/Logos/logo.png

有人可以告诉我我做错了什么吗?我太天真以为DIR_IMAGE定义指向图像所在的文件夹?

无论如何,我这样做的原因是我希望两个opencart商店共享相同的图像文件夹。所以: 第1店:

/home/example/public_html/opencart/

商店2:

/home/example/public_html/opencart2/

图片文件夹:

/home/example/public_html/image/

有没有办法做到这一点?

提前致谢

3 个答案:

答案 0 :(得分:5)

我遇到了同样的问题。

文件 /catalog/model/tool/image.php

第51行&& 53 aprox:

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

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

和文件

/catalog/controller/common/header.php

第24行&& 30 Aprox

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

这些行正在覆盖您的配置。

您可以简单地替换'image'或做一些技巧来添加DIR_IMAGE相关信息。

我想在以后的版本中他们会纠正这个错误。

的问候, 亚历

答案 1 :(得分:0)

不,图片路径错误!

应该是

shop1

define('DIR_IMAGE','/ home / example / public_html / opencart / image /');

SHOP2

define('DIR_IMAGE','/ home / example / public_html / opencart2 / image /');

答案 2 :(得分:0)

要更改图像文件夹,请检查您是否已完成以下操作:

  • 在config.php和admin / config.php
  • 中正确设置define('DIR_IMAGE', '/absolute_path/to/image_folder');
  • 在opencart 1.5.6中,您还必须设置define('HTTP_IMAGE', 'http://example.com/image_folder/');define('HTTPS_IMAGE', 'http(s)://example.com/image_path/');
  • 将图像文件夹重命名为image_folder
  • 如果您创建了一个新文件夹,请确保正确设置权限(image_folder文件夹和所有子文件夹为755,图像文件为644)
  • 删除了system / cache中的文件