织梦cms整合阿里云oss云存储上传插件-非直传版
由于改动文件较多,打包文件仅适合网站未二次修改过同学使用,二次修改过程序的同学请用【Beyond Compare】软件对比来修改;
警告:几块钱的事不支持售后与退款,有兴趣的可下载测试研究!使用前请务必先备份以下需要改动的文件,改动文件包括
/dede/album_add.php
/dede/album_edit.php
/dede/config.php
/dede/imagecut.php
/dede/swfupload.php
/dede/inc/inc_archives_all.php
/dede/inc/inc_archives_functions.php
/dede/templets/imagecut.htm
/include/customfields.func.php
/include/dialog/select_images.php
/include/dialog/select_images_post.php
/include/dialog/select_media.php
/include/dialog/select_soft.php
/include/dialog/select_soft_post.php
/include/helpers/upload.helper.php
添加文件夹有
/include/oss
环境要求
PHP 5.3+
cURL 扩展
织梦整合阿里云OSS特点
1、支持缩略图本地上传、站内选择上传、支持原图选择、支持裁切选择、支持勾选远程下载
2、支持多媒体、附件上传
3、支持自定义字段(图片、多媒体、附件)
4、支持图集[上传][编辑][删除]
5、支持织梦自带编辑器ckeditor单图片、多图片、多媒体、附件上传
6、支持文章内容[下载远程图片和资源]如果是你的阿里云OSS空间图片不会再自动下载,其他远程附件正常下载并上传到阿里云OSS
7、支持阿里云OSS开启和关闭切换
使用前操作
1.阿里云对象存储OSS平台上开启服务,获取到accesskey,创建好Bucket,获取到OSS域名
2.后台 – 系统 – SQL命令行工具 – 执行下面2条语句(防止阿里云OSS域名过长而数据库字段长度过短无法保存完整地址)
1 2 |
ALTER TABLE `#@__uploads` CHANGE `url` `url` CHAR( 255 ) NOT NULL DEFAULT ''; ALTER TABLE `#@__archives` CHANGE `litpic` `litpic` CHAR( 255 ) NOT NULL DEFAULT ''; |
3.后台 – 系统配置 – 添加变量(注意对比,一个也不能错)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
变量名称:cfg_oss 变量类型:布尔(Y/N) 参数说明:阿里云OSS开启 变量值:Y 所属组:站点设置 //////////////////// 变量名称:cfg_oss_bucket 变量类型:文本 参数说明:阿里云OSS空间 变量值: 所属组:站点设置 //////////////////// 变量名称:cfg_oss_domain 变量类型:文本 参数说明:阿里云OSS域名 变量值: 所属组:站点设置 //////////////////// 变量名称:cfg_oss_key_id 变量类型:文本 参数说明:阿里云OSS_KEY_ID 变量值: 所属组:站点设置 //////////////////// 变量名称:cfg_oss_key_secret 变量类型:文本 参数说明:阿里云OSS_KEY_SECRET 变量值: 所属组:站点设置 //////////////////// 变量名称:cfg_oss_endpoint 变量类型:文本 参数说明:阿里云OSS节点外网 变量值: 所属组:站点设置 |
kindeditor支持阿里云OSS上传教程
打开 /include/dialog/kindeditor_post.php 找到
1 |
$inquery = "INSERT INTO |
在它的上面加入
1 2 3 4 5 6 7 8 |
//阿里云OSS require_once(DEDEINC.'/oss/autoload.php'); use OSS\OssClient; $ossClient = new OssClient($cfg_oss_key_id, $cfg_oss_key_secret, $cfg_oss_endpoint); if($cfg_oss == 'Y') { $ossClient->uploadFile($cfg_oss_bucket, substr($activepath,1).'/'.$filename, str_replace('/', DIRECTORY_SEPARATOR, $fullfilename)); } |
继续找到
1 |
'".$activepath."/".$filename."' |
改成
1 |
'".$cfg_oss_domain.$activepath."/".$filename."' |
最后找到
1 |
$activepath."/$mdir/".$filename_name |
替换为
1 |
$cfg_oss_domain.$activepath."/$mdir/".$filename_name |
ueditor支持阿里云OSS上传教程
打开 include/ueditor/php/Uploader.class.php 找到
1 |
class Uploader |
在它的上面加入
1 2 3 4 5 |
require_once("../../common.inc.php"); require_once("../../image.func.php"); //阿里云OSS require_once(DEDEINC.'/oss/autoload.php'); use OSS\OssClient; |
继续找到
1 |
$this->stateInfo = $this->stateMap[0]; |
这个地方有3处,都要在找到的代码下面添加
1 2 3 4 5 6 7 8 |
//阿里云OSS global $cfg_oss, $cfg_oss_key_id, $cfg_oss_key_secret, $cfg_oss_bucket, $cfg_oss_domain, $cfg_oss_endpoint; $ossClient = new OssClient($cfg_oss_key_id, $cfg_oss_key_secret, $cfg_oss_endpoint); if($cfg_oss == 'Y') { $ossClient->uploadFile($cfg_oss_bucket, preg_replace('///','',$this->fullName,1), str_replace('/',DIRECTORY_SEPARATOR,$this->filePath)); $this->fullName = $cfg_oss_domain.$this->fullName; } |
织梦楼 » 织梦cms整合阿里云oss云存储上传插件-非直传版