最新公告
  • 元旦活动:凡在本站购买过源码超过99元的老用户,可免费领取1张99元优惠券,用于抵扣开通年度/永久会员!立即加入我们
  • 帝国cms7.2~7.5阿里云OSS远程附件插件

    帝国cms7.2~7.5阿里云OSS远程附件插件 最后编辑:2020-12-07
    增值服务: 自动发货 使用说明 安装指导 环境配置二次开发BUG修复

    插件介绍

    1、帝国cms附件在后台和前台用户的所有操作中可以与阿里云oss同步上传;

    2、支持火车头发布时自动上传到阿里云OSS

    环境要求

    php版本5.3以上,且安装了Curl 扩展

    安装步骤

    1.上传liuge_aliyunoss.zip到e目录,然后解压

    2.浏览器访问HTTP://www.xxx.com/e/liuge/aliyunoss/install安装

    3.安装完后在插件设置里配置好对应的参数

    accessKeyId和accessKeySecret在 https://ak-console.aliyun.com/?spm=5176.8465980.quick-entry-bucket.d2.43d99720yWGk0Z#/accesskey 里面新建

    endpoint在 https://oss.console.aliyun.com/overview 查看

    bucket 自己新建一个即可

    配置步骤

    1.打开 e/class/connect.php
    找到

    if(!defined('EmpireCMSConfig'))
    {
    exit();
    }
    

    在下面增加

    //阿里云上传
    require_once(ECMS_PATH.'e/liuge/aliyunoss/autoload.php');
    use OSS\OssClient;
    use OSS\Core\OssException;
    function aliup($filename,$img){
      global $accessKeyId,$accessKeySecret,$endpoint,$bucket;
      $object = $filename;
      $content = $img;
      $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);
      $content = $ossClient->putObject($bucket, $object, $content);
      return "";
    }
    //阿里云上传结束
    

    继续找到

    function DoTranFile($file,$file_name,$file_type,$file_size,$classid,$ecms=0){
    

    global $public_r,$class_r,$doetran,$efileftp_fr;
    

    替换为

    global $public_r,$class_r,$doetran,$efileftp_fr,$ossoff,$endpoint,$bucket,$alihttp;
    

    继续在下面找到

    //FileServer
    if($public_r['openfileserver'])
    {
    $efileftp_fr[]=$r['yname'];
    }
    return $r;
    

    在上面增加

    //开始存储到阿里云oss
    if($ossoff==1){
    $uri = $r["url"];
        if (file_exists($_SERVER["DOCUMENT_ROOT"].$uri)) {
            $string=ReadFiletext($_SERVER["DOCUMENT_ROOT"].$uri);
            $alfile=$fspath['filepath'].$filepath.$r[filename];
            aliup($alfile,$string);
            if($alihttp){
              $r[url]=$alihttp.$r[url];
            } else {
              $r[url]="http://".$bucket.".".$endpoint.$r[url];
            }
       }
    }
    

    然后继续查找

    //远程保存
    function DoTranUrl($url,$classid){
    

    把下面一行的

    global $public_r,$class_r,$ecms_config,$efileftp_fr;
    

    替换为

    global $public_r,$class_r,$ecms_config,$efileftp_fr,$ossoff,$endpoint,$bucket,$alihttp;
    

    继续找到

    $r[yname]=$r[savepath].$r[filename];
    

    在下面增加

    if($ossoff==1){
    	$alfile=$fspath['filepath'].$filepath.$r[filename];
    	aliup($alfile,$string);
    	if($alihttp){
    	  $r[url]=$alihttp.$r[url];
    	} else {
    	  $r[url]="http://".$bucket.".".$endpoint.$r[url];
    	}
    }
    

    然后找到

    WriteFiletext_n($r[yname],$string);
    

    修改为

    if($ossoff==0){WriteFiletext_n($r[yname],$string)};
    

    2.打开/e/admin/ecmseditor/fileinc/editorpic.php
    找到

    if(!defined('InEmpireCMS'))
    {
    exit();
    }
    

    在下面加

    require_once(ECMS_PATH.'e/liuge/aliyunoss/config.php');
    

    继续找到

    $file=$fspath['fileurl'].$filepath.$r[filename];
    

    修改为

    if($ossoff==1){
    	if($alihttp){
    	  $file=$alihttp.$fspath['fileurl'].$filepath.$r[filename];
    	} else {
    	  $file="http://".$bucket.".".$endpoint.$fspath['fileurl'].$filepath.$r[filename];
    	}
    }else{
    	$file=$fspath['fileurl'].$filepath.$r[filename];
    }
    

    3.继续打开 e/class/functions.php
    在<?下面加

    require_once(ECMS_PATH.'e/liuge/aliyunoss/config.php');
    

    找到

    function GetFpicToTpic($classid,$id,$num=1,$getfirsttitlespic=0,$swidth=0,$sheight=0,$fstb=1){
    

    把下面的

    global $empire,$dbtbpre,$public_r,$class_r,$loginin,$logininid;
    

    修改为

    global $empire,$dbtbpre,$public_r,$class_r,$loginin,$logininid,$ossoff,$endpoint,$bucket,$alihttp;
    

    继续找到

    return $firsttitlepic;
    

    在上面加

    if($ossoff==1){
    	if($alihttp){
    	  $r[url]=$alihttp.$firsttitlepic;
    	} else {
    	  $r[url]="http://".$bucket.".".$endpoint.$firsttitlepic;
    	}
    }
    

    4.新增 如果是帝国cms7.5 安装了多图上传功能 再按下面的进行修改
    打开  /e/admin/ecmseditor/tranmore/tranmorefun.php
    找到

    global $empire,$dbtbpre,$public_r,$ecms_config;
    

    替换为

    global $empire,$dbtbpre,$public_r,$ecms_config,$ossoff,$endpoint,$bucket,$alihttp;
    

    继续找到

    $tranmore_picr[$i]['picname']=stripSlashes($fileno);
    

    在下面加

    if($ossoff==1){
    if($alihttp){
          $tranmore_picr[$i]['bigpicurl']=$alihttp.$tranmore_picr[$i]['bigpicurl'];
          if($tranmore_picr[$i]['smallpicurl']){
            $tranmore_picr[$i]['smallpicurl']=$alihttp.$tranmore_picr[$i]['smallpicurl'];
          }
        } else {
          $tranmore_picr[$i]['bigpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['bigpicurl'];
          if($tranmore_picr[$i]['smallpicurl']){
            $tranmore_picr[$i]['smallpicurl']="http://".$bucket.".".$endpoint.$tranmore_picr[$i]['smallpicurl'];
          }
        }
    }
    

    按照以上的步骤修改完成后就可以用了

    插件截图

    帝国cms7.2~7.5阿里云OSS远程附件插件

    猜你喜欢

    猜你在找

    RIPRO主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
    开发网 » 帝国cms7.2~7.5阿里云OSS远程附件插件
    • 2020-12-07Hi,初次和大家见面了,请多关照!

    发表评论

    售后服务:

    • 售后服务范围 1、商业模板使用范围内问题免费咨询
      2、源码安装、模板安装(一般 ¥50-300)服务答疑仅限SVIP用户
      3、单价超过200元的模板免费一次安装,需提供服务器信息。
      付费增值服务 1、提供dedecms模板、WordPress主题、discuz模板优化等服务请详询在线客服
      2、承接 WordPress、DedeCMS、Discuz 等系统建站、仿站、开发、定制等服务
      3、服务器环境配置(一般 ¥50-300)
      4、网站中毒处理(需额外付费,500元/次/质保三个月)
      售后服务时间 周一至周日(法定节假日除外) 9:00-23:00
      免责声明 本站所提供的模板(主题/插件)等资源仅供学习交流,若使用商业用途,请购买正版授权,否则产生的一切后果将由下载用户自行承担,有部分资源为网上收集或仿制而来,若模板侵犯了您的合法权益,请来信通知我们(Email: 80027422@qq.com),我们会及时删除,给您带来的不便,我们深表歉意!

    Hi, 如果你对这款模板有疑问,可以跟我联系哦!

    联系作者
    • 124会员总数(位)
    • 280资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 339稳定运行(天)

    提供最优质的资源集合

    升级SVIP QQ交流群
    升级SVIP尊享更多特权立即升级