核心思路
织梦默认使用的是ckeditor编辑器,要更换为百度UEditor,我们需要做以下几件事:

- 下载UEditor:从百度官方获取最新的UEditor编辑器文件。
- 替换文件:将织梦原生的编辑器文件替换为UEditor的文件。
- 修改模板:修改织梦后台的内容编辑模板,使其加载UEditor。
- 配置UEditor:根据需要配置UEditor的功能和上传路径。
第一步:下载百度UEditor
- 访问官网:前往百度UEditor的官方发布页面:https://ueditor.baidu.com/website/download.html
- 选择版本:
- 开发版:包含源码,适合学习和深度定制,文件较大。
- 最小部署版:只包含核心运行文件,体积小,适合直接使用。
- 完整版:包含所有功能,文件较大,但功能最全。
- 选择语言:选择
PHP版本。 - 下载并解压:下载完成后,将压缩包解压到一个临时文件夹,你会得到一个类似
ueditor1_4_3_3-php的文件夹。
第二步:上传UEditor文件到织梦服务器
-
找到织梦编辑器目录:通过FTP或文件管理器,登录你的网站服务器,找到织梦编辑器的存放目录,通常位于:
/dede/在这个目录下,你会看到一个名为
editor的文件夹。 -
备份原编辑器:强烈建议先备份原有的
editor文件夹,以防操作失误可以恢复。 -
上传新文件:
(图片来源网络,侵删)- 将第一步解压出的UEditor文件夹内的所有内容,全部覆盖上传到织梦的
/dede/editor/目录下。 - 确保目录结构大致如下:
/dede/ ├── editor/ │ ├── dialogs/ // 弹出对话框目录 │ ├── lang/ // 语言包目录 │ ├── themes/ // 主题样式目录 │ ├── ueditor.config.js // UEditor核心配置文件 │ ├── ueditor.all.js // UEditor核心JS文件 │ └── ... (其他文件) │ ├── (织梦其他文件...)
- 将第一步解压出的UEditor文件夹内的所有内容,全部覆盖上传到织梦的
第三步:修改织梦模板以加载UEditor
这是最关键的一步,我们需要修改织梦后台的模板文件,让它在编辑内容时调用UEditor,而不是原来的编辑器。
-
找到模板文件:在织梦后台,进入“模板” -> “默认模板管理”,我们需要修改的是内容发布相关的模板,它们位于
article_add.htm和article_edit.htm。 -
修改
article_add.htm(添加文章模板):- 在后台模板管理中找到并点击
article_add.htm进行编辑。 - 在模板代码中找到
function showEditor() { ... }这个JavaScript函数。 - 删除
showEditor函数内部的所有原有代码(通常是关于ckeditor的初始化代码)。 - 将
showEditor函数的替换为以下代码:
function showEditor(str1,str2) { var res = str2 + " "; if(document.getElementById(str1)) { document.getElementById(str1).value = res; } else { document.getElementById(str1).innerHTML = res; } try { UE.getEditor('body').setContent(res); } catch (e) { console.error('UEditor初始化失败,请检查文件是否上传完整。', e); } }- 找到
<textarea name="body" id="body"></textarea>这一行。 - 将其完全删除,并替换为以下代码:
<script type="text/plain" id="body" name="body" style="width:100%;height:400px;"></script> <script> UE.getEditor('body'); </script>
- 在后台模板管理中找到并点击
-
修改
article_edit.htm(编辑文章模板):
(图片来源网络,侵删)- 同样地,在后台模板管理中找到并编辑
article_edit.htm。 - 重复上面
article_add.htm的两个步骤:替换showEditor函数,并替换<textarea>
- 同样地,在后台模板管理中找到并编辑
-
清空缓存:完成模板修改后,务必在后台点击“系统” -> “一键更新网站” -> “更新所有”,或者直接在“系统” -> “性能选项”中“清空所有缓存”。
第四步:配置UEditor(非常重要)
直接使用UEditor可能会遇到图片上传失败的问题,因为UEditor默认的上传路径和织梦不匹配,我们需要修改UEditor的配置文件来解决这个问题。
-
找到配置文件:在
/dede/editor/目录下,找到ueditor.config.js文件。 -
修改图片、视频等上传配置:打开
ueditor.config.js文件,找到imageUrlPrefix,scrawlUrlPrefix,snapscreenUrlPrefix等配置项,将它们的值修改为你的网站根目录,或者留空(表示相对路径)。// 服务器配置项 , serverUrl: "" // 这里留空,表示使用相对路径上传,或者填写一个处理上传的PHP文件地址 , imageUrlPrefix: "" // 图片访问路径前缀,留空表示相对路径,如 "/uploads/" , imagePathFormat: "/uploads/{yyyy}{mm}{dd}/{time}{rand:6}" // 上传保存路径imagePathFormat:这是最关键的配置,它定义了图片上传后的存储路径。{yyyy}: 年{mm}: 月{dd}: 日{time}: 时间戳{rand:6}: 6位随机数
- 这个路径
/uploads/是相对于你网站的根目录的,请确保你的网站根目录下有这个目录,并且有写入权限。
-
检查上传目录权限:
- 确保你为UEditor配置的上传目录(
/uploads/)具有755或775的权限,确保Web服务器(如Apache/Nginx)可以写入文件。
- 确保你为UEditor配置的上传目录(
第五步:测试与常见问题解决
-
登录后台测试:登录织梦后台,尝试“新增文章”或“编辑文章”,你应该能看到一个功能强大的百度编辑器界面了。
-
测试上传功能:在编辑器中点击“上传图片”或“上传视频”按钮,尝试上传一张本地图片,看是否能成功上传到服务器并显示在编辑器中。
常见问题排查
-
问题1:编辑器不显示,或显示为空白。
- 原因:JS路径错误或文件未上传成功。
- 解决:检查浏览器开发者工具(按F12)的Console(控制台)是否有JS错误,确认
/dede/editor/目录下的所有文件都已正确上传。
-
问题2:图片/视频上传失败,提示“后台配置项没有正常加载,上传插件将不能正常工作!”
- 原因:
ueditor.config.js中的serverUrl配置不正确,或者服务器无法处理上传请求。 - 解决:
- 将
ueditor.config.js中的serverUrl改为 (空字符串)。 - 确保你的网站服务器环境支持PHP,
/uploads/目录有写入权限。 - 如果问题依旧,可能需要UEditor的PHP后端支持,你需要将下载的UEditor包里的
php文件夹上传到/dede/editor/目录下,并将serverUrl设置为"php/controller.php"。
- 将
- 原因:
-
问题3:编辑器样式错乱。
- 原因:CSS文件路径错误或与其他CSS冲突。
- 解决:检查页面头部加载的CSS文件路径是否正确,可以尝试在模板中手动引入UEditor的CSS文件(位于
/dede/editor/themes/目录下)。
-
问题4:其他栏目或模型(如产品、软件)的编辑器没有改变。
- 原因:你可能只修改了
article_add.htm和article_edit.htm,其他模型(如产品、软件)有自己的编辑模板,如archives_add.htm、soft_add.htm等。 - 解决:你需要找到所有你想要使用UEditor的模型对应的编辑模板,并重复第三步的操作来修改它们。
- 原因:你可能只修改了
通过以上五个步骤,你就可以成功地将百度UEditor集成到织梦DedeCMS中了,整个过程的核心在于替换文件、修改模板和配置上传路径,遇到问题时,善用浏览器的开发者工具是快速定位问题的关键。
