zoukankan      html  css  js  c++  java
  • 修改ECSHOP,支持图片云存储化(分离到专用图片服务器)

    为了提高页面加载速度和适应中国复杂的网络环境,我决定把所有商品图片都分离到专业的云存储服务器上,具有CDN加速功能。

    首先,生成一个域名 img.xxxx.com 并映射到自己的云存储别名,然后把全部图片(含目录结构)上传到 云存储空间。

    在config.php 增加
    /* 商品详情图片地址替换 */
    // 总开关,1启用云存储,0使用本地图片
    $imgserver = 1;
    // 匹配图片前缀,即上传图片src的共同部分,在“/”前加“”
    $imgserver_pattern = '/images/upload';
    // 域名前缀,最后不用加“/”
    $imgserver_path = 'http://img.xxxx.com';


    goods.php 在170-180行左右中寻找
    /* 购买该商品可以得到多少钱的红包 */
            if ($goods['bonus_type_id'] > 0)

    加入以下部分:
    // 商品详情图片地址替换, by layen 明朗
    if ($imgserver == 1) {
        $goods['goods_desc'] = preg_replace('/'.$imgserver_pattern.'/i', $imgserver_path.'', $goods['goods_desc']);
    }

    到$smarty->assign('goods', $goods);
    这一句代码之前即可


    在/includes/lib_common.php中大约2187行,找到下面代码,增加红色部位即可。

    /**
    * 重新获得商品图片与商品相册的地址
    *
    * @param int $goods_id 商品ID
    * @param string $image 原商品相册图片地址
    * @param boolean $thumb 是否为缩略图
    * @param string $call 调用方法(商品图片还是商品相册)
    * @param boolean $del 是否删除图片
    *
    * @return string   $url
    */
    function get_image_path($goods_id, $image='', $thumb=false, $call='goods', $del=false){
        $url = empty($image) ? $GLOBALS['_CFG']['no_picture'] : $image;
      
        if( $GLOBALS['imgserver'] == 1){
            $url = str_replace('images/','http://img.xxxx.com/images/',$url);  // 修改产品主图路径,by layen 明朗
        }
       
        return $url;
    }

  • 相关阅读:
    POJ--2356 Find a multiple
    Trailing Zeroes (III)
    第一章 快速入门
    第二章 变量和基本类型
    第三章 标准库类型
    第四章 数组和指针
    第五章 表达式
    第六章 语句
    第七章 函数
    第八章 标准IO库
  • 原文地址:https://www.cnblogs.com/wawahaha/p/4639051.html
Copyright © 2011-2022 走看看