ecshop上传产品图片和缩略图模糊的解决方案
无忧主机小编帮一位站长朋友安装了一款开源的电商程序-ECSHOP,安装完成后当他在后台编辑商品上传图片后在网站前台阅览看到上传的产品图片和缩略图都是比较模糊的,于是他又向小编求助。小编开始认为是由于上传时操作不规范导致的,就自己重新做了一遍果然一样的模糊。小编就开始研究问题所在。经过小编仔细的研究终于找到了两种解决缩略图不清晰的方案。下面小编为大家分享下解决的方案:
第一种解决方案:
首先找到includes/cls_image.php文件,在大约250行
/* 生成文件 */
if (function_exists(‘imagejpeg’))
{
$filename .= ‘.jpg’;
imagejpeg($img_thumb, $dir . $filename);
}
修改为
/* 生成文件 */
if (function_exists(‘imagejpeg’))
{
$filename .= ‘.jpg’;
imagejpeg($img_thumb, $dir . $filename, 96);
}
修改后就上传到对应的目录下,然后再去前台刷新下就明显看到清晰多了,如果想让缩略图和上传的图片一样清晰还需要修改如下:
修改admin/goods.php 文件,大约在613行:
// 如果系统支持GD,缩放商品图片,且给商品图片和相册图片加水印
if ($proc_thumb && $image->gd_version() > 0 && $image->check_img_function($_FILES[‘goods_img’][‘type’]))
{
// 如果设置大小不为0,缩放图片
if ($_CFG[‘image_width’] != 0 || $_CFG[‘image_height’] != 0)
{
$goods_img = $image->make_thumb(‘../’. $goods_img , $GLOBALS[‘_CFG’][‘image_width’], $GLOBALS[‘_CFG’][‘image_height’]);
if ($goods_img === false)
{
sys_msg($image->error_msg(), 1, array(), false);
}
}
修改为:
// 如果系统支持GD,缩放商品图片,且给商品图片和相册图片加水印
if ($image->gd_version() > 0 && $image->check_img_function($_FILES[‘goods_img’][‘type’]) &&$_FILES[‘goods_img’][‘width’] > $GLOBALS[‘_CFG’][‘image_width’] &&$_FILES[‘goods_img’][‘height’] > $GLOBALS[‘_CFG’][‘image_height’])
{
// 如果设置大小不为0,缩放图片
if ($_CFG[‘image_width’] != 0 || $_CFG[‘image_height’] != 0)
{
$goods_img = $image->make_thumb(‘../’. $goods_img , $GLOBALS[‘_CFG’][‘image_width’], $GLOBALS[‘_CFG’][‘image_height’]);
if ($goods_img === false)
{
sys_msg($image->error_msg(), 1, array(), false);
}
}
修改以上地方后登陆到网站的后台,系统设置-》商店设置-》显示设置:把商品图片宽度,高度设置成一样,图像就不会模糊了。
第二种解决方案:
按照路径直接找到根目录下thems/default/goods.dwt这个文件 直接修改模板文件即可
找到:
<div class=”good_img”>
<a href=”javascript:;” onclick=”window.open(‘gallery.php?id={$goods.goods_id}’); return false;” >
<img src=”{$goods.goods_img}” alt=”{$goods.goods_name|escape:html}” id=”goodsimg” style=”width:340px;” />
</a>
</div>
修改为:
<div class=”good_img”>
<a href=”javascript:;” onclick=”window.open(‘gallery.php?id={$goods.goods_id}’); return false;” >
<img src=”{$goods.original_img}” alt=”{$goods.goods_name|escape:html}” id=”goodsimg” style=”width:340px;” />
</a>
</div>
以上就是小编总结的两种解决在ECSHOP后台上传图片后产品原图和缩略图模糊的详细解决方案。按照以上方案修改完成后再后台传图片到前台刷新页面后就可以清楚的看到清晰的图片了。
相关文章推荐阅读: