织梦DedeCMS整合七牛云存储教程
目前织梦dedecms与七牛云存储的集成整合教程还是空白,下面FuckDede就教大家如何将七牛云存储与织梦CMS默认的编辑器完美整合,通过编辑器上传图片或者附件能够完美同步上传到七牛云服务器,并返回图片或附件的链接直接使用。
织梦整合七牛云全部文件打包(gbk / utf8)
链接: https://pan.baidu./s/1fbPjfJBnk_JWId0w-AZX2A
提取码: 59
由于改动文件较多,打包文件仅适合网站未二次修改过同学使用;
二次修改过程序的同学请用【Beyond Compare】软件对比来修改;
警告使用前请务必先备份推火网以下需要改动的文件
改动文件包括推火网以下
/dede/album_add.php
/dede/album_edit.php
/dede/config.php
/dede/imagecut.php
/dede/swfupload.php
/dede/c/c_archives_all.php
/dede/c/c_archives_functions.php
/dede/templets/imagecut.htm
/clude/customfields.func.php
/clude/dialog/select_images.php
/clude/dialog/select_images_post.php
/clude/dialog/select_media.php
/clude/dialog/select_soft.php
/clude/dialog/select_soft_post.php
/clude/helpers/upload.helper.php
添加文件夹有
/clude/qiu
环境要求
PHP >= 5.3.0
cURL 扩展
织梦整合七牛云特点
1、支持缩略图本地上传、站内选择上传、支持原图选择、支持裁切选择、支持勾选远程下载
2、支持多媒体、附件上传
3、支持自定义字段(图片、多媒体、附件)
4、支持图集上传[删除]
5、支持织梦自带编辑器ckeditor单图片、多图片、多媒体、附件上传
6、支持文章内容[下载远程图片和资源]如果是你的七牛云空间图片不会再自动下载,其他远程附件正常下载并上传到七牛云
7、支持开启和关闭七牛云
使用前设置
申请七牛云,开通存储,域名那些简单操作这里不再唠叨。
后台 - 系统配置 - 添加变量(注意对比,一个也不能错)
|
变量名称:cfg_qiu |
|
变量类型:布尔(Y/N) |
|
参数说明:开启七牛云 |
|
变量值:Y |
|
所属组:站点设置 |
|
|
|
变量名称:cfg_qiubucket |
|
变量类型:文本 |
|
参数说明:七牛云空间 |
|
变量值: |
|
所属组:站点设置 |
|
|
|
变量名称:cfg_qiudoma |
|
变量类型:文本 |
|
参数说明:七牛云域名 |
|
变量值: |
|
所属组:站点设置 |
|
|
|
变量名称:cfg_qiuak |
|
变量类型:文本 |
|
参数说明:七牛云AK |
|
变量值: |
|
所属组:站点设置 |
|
|
|
变量名称:cfg_qiusk |
|
变量类型:文本 |
|
参数说明:七牛云SK |
|
变量值: |
|
所属组:站点设置 |
kdeditor支持七牛云上传教程
打开 /clude/dialog/kdeditor_post.php 找到
$query = "INSERT INTO
在它的上面加入
|
//开启七牛云 |
|
require_once(DEDEINC.'/qiu/autoload.php'); |
|
use Qiu\Auth; |
|
$auth = new Auth($cfg_qiuak, $cfg_qiusk); |
|
$token = $auth->uploadToken($cfg_qiubucket); |
|
use Qiu\Storage\UploadManager; |
|
|
|
if($cfg_qiu == 'Y') |
|
{ |
|
$uploadMgr = new UploadManager(); |
|
$key = substr($activepath,1).'/'.$filename; |
|
list($ret, $err) = $uploadMgr->putFile($token, $key, $fullfilename); |
|
} |
继续找到
'".$activepath."/".$filename."'
改成
'".$cfg_qiudoma.$activepath."/".$filename."'
找到
$activepath."/$mdir/".$filename_name
改成
$cfg_qiudoma.$activepath."/$mdir/".$filename_name
完成。
ueditor支持七牛云上传教程
打开 /clude/ueditor/php/Uploader.class.php 找到
class Uploader
在它的上面加入
|
require_once("../../mon.c.php"); |
|
require_once("../../image.func.php"); |
|
//开启七牛云 |
|
require_once(DEDEINC.'/qiu/autoload.php'); |
|
use Qiu\Auth; |
|
use Qiu\Storage\UploadManager; |
继续找到
|
/ |
|
获取当前上传成功文件的各项信息 |
|
|
|
public function getFileInfo() |
|
{ |
|
return array( |
|
"state" => $this->stateInfo, |
|
"url" => $this->fullName, |
|
"title" => $this->fileName, |
|
"origal" => $this->oriName, |
|
"type" => $this->fileType, |
|
"size" => $this->fileSize |
|
); |
|
} |
在这个方法的下面加入一个方法
|
/ |
|
七牛云上传 |
|
|
|
public function QiuUpload($key, $filePath) |
|
{ |
|
global $cfg_qiu, $cfg_qiuak, $cfg_qiusk, $cfg_qiubucket, $cfg_qiudoma; |
|
$auth = new Auth($cfg_qiuak, $cfg_qiusk); |
|
$token = $auth->uploadToken($cfg_qiubucket); |
|
$uploadMgr = new UploadManager(); |
|
list($ret, $err) = $uploadMgr->putFile($token, $key, $filePath); |
|
if($err !== null){ |
|
$err['status'] = 0; |
|
return $err; |
|
}else{ |
|
$ret['status'] = 1; |
|
return $ret; |
|
} |
|
} |
找到
$this->stateInfo = $this->stateMap[0];
这个地方有3处,都要在找到的代码下面添加
|
//开启七牛云 |
|
global $cfg_qiu, $cfg_qiudoma; |
|
if($cfg_qiu == 'Y') |
|
{ |
|
$ret = $this->QiuUpload(preg_replace('///','',$this->fullName,1), $this->filePath); |
|
|
|
if($ret['status'] == 1) |
|
{ |
|
$this->fullName = $cfg_qiudoma.$this->fullName; |
|
} |
|
} |
完成。
织梦自带采集支持上传附件到七牛云教程
打开 /clude/dedecollection.class.php 找到
@set_time_limit(0);
在它的下面加入
|
//开启七牛云 |
|
require_once(DEDEINC.'/qiu/autoload.php'); |
|
use Qiu\Auth; |
|
use Qiu\Storage\UploadManager; |
继续找到
global $notckpic;
在它的下面加入
global $cfg_qiu, $cfg_qiuak, $cfg_qiusk, $cfg_qiubucket, $cfg_qiudoma;
继续找到
if($tofile=='')
它的上面加入
|
//开启七牛云 |
|
if($cfg_qiu == 'Y') |
|
{ |
|
$auth = new Auth($cfg_qiuak, $cfg_qiusk); |
|
$token = $auth->uploadToken($cfg_qiubucket); |
|
$uploadMgr = new UploadManager(); |
|
$key = preg_replace('///','',$filename,1); |
|
list($ret, $err) = $uploadMgr->putFile($token, $key, $GLOBALS['cfg_basedir'].$filename); |
|
} |
找到
return $filename;
改成
|
//开启七牛云 |
|
if($cfg_qiu == 'Y') |
|
{ |
|
$auth = new Auth($cfg_qiuak, $cfg_qiusk); |
|
$token = $auth->uploadToken($cfg_qiubucket); |
|
$uploadMgr = new UploadManager(); |
|
$key = preg_replace('///','',$filename,1); |
|
list($ret, $err) = $uploadMgr->putFile($token, $key, $GLOBALS['cfg_basedir'].$filename); |
|
} |
|
return $cfg_qiudoma.$filename; |