discuz二次开发更换百度ueditor编辑器

修改前必读:1、修改编辑器后会造成以前发过的帖子再次进行修改时(也就是编辑帖子操作)出现很多被DZ重写过的HTML标签,不方便进行修改,所以尽量在安装DZ后立刻进行修改。(当然,如果你有能力重写代码的话就

[时间:11-06]    [浏览:]    [放入收藏夹]    [查看详情]

修改前必读:

1、修改编辑器后会造成以前发过的帖子再次进行修改时(也就是编辑帖子操作)出现很多被DZ重写过的HTML标签,不方便进行修改,所以尽量在安装DZ后立刻进行修改。(当然,如果你有能力重写代码的话就可以无视啦)

2、修改前请先在本地进行尝试或备份相关文件。

需要修改的文件:

templatedefaultforumpost_editor_body.htm

templatedefaultforumpost.htm

sourcefunctionfunction_Discuzcode.php

sourceincludepostpost_editpost.php

修改步骤:

一、首先下载百度的 ueditor utf-8 php 版,解压出来后将文件夹名改为ueditor,然后放在论坛根目录。

二、修改post_editor_body.htm(将下面代码复制,打开文件全选之后粘贴。)

 {lang e_editor_loading}$editor[value]var ue = UE.getEditor('{$editorid}_textarea');close{lang missed_data} {lang post_autosave_restore}

三、修改post.htm

搜索 “switchpost(”,找到“$_GET[action] == 'newthread'” 下面的ul标签,之后将下面的代码替换掉整段ul。

{lang draftbox}($savecount){lang post_newthread}{lang post_newthreadpoll}{lang post_newthreadreward}{lang post_newthreaddebate}{lang post_newthreadactivity}{lang post_newthreadtrade}{$_G[setting][threadplugins][$tpid][name]}

四、修改 function_Discuzcode.php ,大约在第 97 行,或者搜索 $htmlon , 在下面加上 $htmlon=1;

注:改这里是 DZ在提交时将替换编辑框里html标签 的功能去掉了,如果不去掉会出现读取帖子内容的时候连标签一起显示出来的问题。因为时间紧迫,没有深入修改,就直接这么办了,不影响编辑器使用,但是可能会出现一些安全上的问题(如用户提交恶意JS脚本等),有能力的朋友自己可以完善下。

五、修改 post_editpost.php ,大约在 217 行,或者搜索 dhtmlspecialchars ,第二个就是,然后将这一行注释掉。

最后后台更新下缓存,完成。
 

  本文转载自:精准像素:11px.cn ,感谢作者分享实用知识


标签: