百度在线编辑器 php,DedeCMS与Ueditor百度编辑器整合完整版

本文详细介绍了如何将UEditor集成到DedeCMS中,包括配置编辑器、调整图片及附件上传路径等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

二、把UE放进 DedeCMS(以下简称DD)

三、修改 include/inc/inc_fun_funAdmin.php 让 DD 能够调用到 UE

四、修改 include/ueditor/editor_config.js

五、修改图片上传

六、修改涂鸦

七、修改附件上传

八、修改图片搜索

九、修改图片在线管理

以下是内容正文:

一、下载UE

最新版本是 1.2.3.0 ,请自己下载PHP版本(本人是PHP版本 UFT-8版)。下载完成后,会得到以下这样的目录结构的

1e4840840a30bad6e049b0d89255bd43.png

UE文件说明:

_examples 是存放示例的文件夹

_src 存放是各功能未压缩的JS源码

dialogs 是存放各个弹出窗口应用功能的文件,包含html,js

lang 是存放编辑器语言的文件,有中文和E文

php 是存放文件上传、涂鸦、远程图片、在线图片管理,添加视频的php源码文件,可以按自己的需求修改

themes 当然就是主题样式图片存放的地方

third-party 是第三方插件文件存放地方。

editor_ajj.js  此文件是所有_src里的js源码的合集

editor_all_min.js 此文件是editor_all.js的压缩版

editor_config.js  此文件是UE的配置文件

二、复制UE到DD

UE除了_example以及_src之外,其它的文件全部复制到DD的include文件夹下!完成后UE在DD里边的结构如下图:

ff49826fe8582b85abe69846186e03ca.png

三、修改 include/inc/inc_fun_funAdmin.php 让 DD 能够调用到 UE

打开 include/inc/inc_fun_funAdmin.php ,大约150行,有个function SpGetEditor,这是DD调用编辑器的,我们要修改它,达到能够调用UE,下拉到226行左右,加上以下代码:

else if($GLOBALS['cfg_html_editor']=='ueditor')

{

$fvalue = $fvalue=='' ? '

$code = '

'.$fvalue.'

';

if($gtype=="print")

{

echo $code;

}

else

{

return $code;

}

}

复制代码

如下图:

84e6a0848122cc42386fa95187d23360.png

四、修改 include/ueditor/editor_config.js

修改了28、147行,就后台就可以直接使用UE了!

除了28、147行,其它的地方,影响与它功能结合的php返回给编辑器的路径。

28行:URL = ‘/include/ueditor/’ 配置UE在DD里的路径

45行:,imagePath:"/"   图片上传

52行:,scrawlPath:"/"   涂鸦

56行:,filePath:"/"   附件上传

62行:,catcherPath:"/"  远程图片

69行:,imageManagerPath:"/"                在线图片管理

147行:,allHtmlEnabled:false  此处去掉注释,影响保存内容时是否包含多余的HTML

五、结合第四步,45行,修改图片上传路径

修改 include/ueditor/php/imageUp.php

首先,修改上传路径,路径为DD根目录下的upload,这个看个人需要,然后要判定目录是否存在,不存在则自动创建,最后为上传目录,加一级images,存放图片就在images下!此处不用再自动创建,这个工作留给公共上传类Uploader.class.php

4b7151bada00714fc5933bb08c25b0c7.png

然后,修改 include/ueditor/php/Uploader.class.php 最后边的那个function,让上传的图片,按日期文件夹保存:

5cd537b6dca60387f6e1a76e8db53bcb.png

按个人需要,上图187行,可以删除。先判断存放路径最后是否有斜杠,有的话,就删除,因为后边加上了日期用斜杠分割,如: ../../../upload/images/Y/m/d,所以,不要让多余斜杠存在!

最后,修改 include/ueditor/php/imageUp.php 最后一行,让程序返回给编辑器的图片路径正确:

echo "{'url':'" . str_replace('../','',$info[ "url" ]) . "','title':'" . $title . "','original':'" . $info["originalName"] . "','state':'" . $info["state"] . "'}";//去掉路径里的 ../

复制代码

把 ../ 这字符串全部清除,清除后变成了: upload/images/Y/m/d/图片.jpg,若直接给这串路径到编辑器、页面,肯定是错的,这时,就是配合第四步的45行 imagePath : ‘/’来达到完整的路径: /upload/images/Y/m/d/图片.jpg

到些,图片上传修改成功,记住 Uploader.class.php 处的修改,因为附件上传等应用到它的时候,就不用修改了!

六、配合第四步,52行,修改来实现涂鸦的图片保存!include/ueditor/php/scrawUp.php

同样,把涂鸦放在upload下,因为是涂鸦,我把它分到upload/scraw文件夹,用笨方法,一个个文件夹建立。

b033b16d005b8387abecd75bd19da57a.png

然后修改 Uploader.class.php(此处在图片上传处修改过了,按 Y/m/d 存放)。同样,最后修改 scrawUp.php 的返回路径:

$info = $up->getFileInfo();

echo "{'url':'" . str_replace('../','',$info[ "url" ]) . "',state:'" . $info[ "state" ] . "'}";//修改这一行,去掉路径里的 ../

复制代码

七、配合第四步的56行,修改附件上传路径(同图片上传)include/ueditor/php/fileUp.php

3e8e1e91197a7f6d1268e4b28732ab69.png

然后修改 Uploader.class.php(此处已经在图片上传处修改过了,按 Y/m/d 存放)。同样,最后修改 fileUp.php 的返回路径:

echo '{"url":"' .str_replace('../','',$info[ "url" ]) . '","fileType":"' . $info[ "type" ] . '","original":"' . $info[ "originalName" ] . '","state":"' . $info["state"] . '"}';//也就是去掉路径里的 ../

复制代码

八、配合第四步的62行,修改图片搜索得到的图片保存路径 include/ueditor/php/getRemoteImage.php

首先,修改配置

//远程抓取图片配置

$config = array(

"savePath" => "../../../upload/images" ,            //保存路径

"allowFiles" => array( ".gif" , ".png" , ".jpg" , ".jpeg" , ".bmp" ) , //文件允许格式

"maxSize" => 3000                    //文件大小限制,单位KB

);

复制代码

然后,修改保存路径,这里会自动创建文件夹  ../../../upload/images/Y/m/d

//创建保存位置

$savePath = $config[ 'savePath' ];

$dirpath = explode('/',$savePath.date('/Y/m/d'));//通过斜杠分割

$savePath = '';

for($i=0;$i

{

if($i != count($dirpath))

{

$savePath .= $dirpath[$i].'/';

}

if(!file_exists($savePath))

{

if(!mkdir($savePath,0777,true))return false;

}

}

复制代码

最后,修改返回的图片路径(路径一直配合上传路径(因为是相对路径)应用这方法,我还是说了很多次),最后一行,echo的地方,改成:

echo "{'url':'" . implode( "ue_separate_ue" , str_replace('../','',$tmpNames) ) . "','tip':'远程图片抓取成功!','srcUrl':'" . str_replace('../','',$uri) . "'}";//此处不解析了

复制代码

九、配合第四步的69行,修改图片在线管理文件夹,以及返回的图片路径

修改文件:include/ueditor/php/imageManager.php

10行:$path = '../../../upload/images';  改成我们上传的图片文件夹

45行:return str_replace('../','',$files);  修改返回的图片路径

到此,已经完成了DD和UE的整合,并修了图片附件上传的路径。

最后,说明一点,在DD的栏目内容处,把编辑器换回ckeditor,因为UE在此处应用时,栏目内容无法修改,甚至会被清空!修改方法:dede/templets/album_add.htm 和 dede/templets/album_edit.htm,两个文件都要修改,找到载入编辑器的地方,改成类似如下图:

eb8f6f5ef47c9bd1010dd34b81fbf59c.png

即,加多一行 $GLOBALS['cfg_html_editor']='ckeditor'; 让编辑器在栏目内容处,换回ckeditor!

百度编辑器UEditor .PHP版 v1.3.5,Ueditor是由百度web前端研发部开发所见即所得的编辑器,具有轻量,可定制,注重用户体验等特点。Ueditor基于BSD开源协议,除了具有代码精简、加载迅速的轻量级特质外,还采用了分层理念,使开发者可以根据实际应用和需求自由定制。 Ueditor编辑器划分为了三层架构。其中,核心层为开发者提供了诸如range、selection、domUtils类的底层API接口,中间的命令插件层不仅提供了大量的基础command,还允许开发者基于核心层进行command命令的开发,而面向用户端的界面层则可以提供自由定制的用户交互界面。Ueditor开源编辑器这种拥有可配性的模式,令开发者能够根据自身需要接入任何一层进行开发。 百度编辑器 v1.3.5 更新日志: 新增功能 asp后台的支持 添加本地自动保存功能 增加数据可视化展示功能 编辑器实例上添加isFocus,blur方法 新增在chrome下针对图片的拖拽宽高功能 新增在高端浏览器下,qq截图粘贴上传,拖拽图片到编辑上传 添加表格插入列标题功能 添加设置表格可排序功能,支持表格在预览页排序 添加生成目录功能 优化修复 ie8以上版本使用w3cRange 使用grunt作为打包工具 修复了过滤规则对于script/style的内容的转码 自动寻址功能重构 修复下拉菜单高度问题 针对ie默认带有的autolink功能,添加开启禁用选项,创建时传入autolink:false就可禁用ie的autolink功能 支持插入动态地图 **API文档更新** 图片上传路径可配置,增加前后端路径验证 对uparse进行了拆分重构 随下载包提供各种功能说明文档 背景颜色功能重构,可以在预览页显示背景 重写了查找替换插件,解决ff下window.find方法失效的问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值