dedecms更换为kindeditor编辑器后各类问题解决方法

2021年1月27日11:13:25 12 1,085 ℃

kindeditor简介

KindEditor是一套开源的HTML可视化编辑器,主要用于让用户在网站上获得所见即所得编辑效果,兼容IE、Firefox、Chrome、Safari、Opera等主流浏览器。

KindEditor使用JavaScript编写,可以无缝的于Java、.NET、PHP、ASP等程序接合。 KindEditor非常适合在CMS、商城、论坛、博客、Wiki、电子邮件等互联网应用上使用,2006年7月首次发布2.0以来,KindEditor依靠出色的用户体验和领先的技术不断扩大编辑器市场占有率,目前在国内已经成为最受欢迎的编辑器之一。

特点

1. 体积小,加载速度快,但功能十分丰富。2. 内置自定义range,完美地支持span标记。

3. 基于插件的方式设计,所有功能都是插件,增加自定义和扩展功能非常简单。

4. 修改编辑器风格很容易,只需修改一个CSS文件。

5. 支持大部分主流浏览器,比如IE、Firefox、Safari、Chrome、Opera。

dedeCMS默认的ckeditor编辑器个人感觉不是很好用,也不支持视频上传,dedeCMS官网也提供了kindeditor编辑器的插件,但是下载页面已经无法访问了,还好网上还有网友分享了插件,百度很轻松就能找到。

按照使用方法,安装启用以后发现有几个问题,这几个问题网上也可以找到答案,但是也要费一些功夫。

主要有以下问题:

1、dedeCMS更换成kindeditor后栏目内容无法保存。

2、dedeCMS更换成kindeditor后视频上传以无法播放。

dedecms更换为kindeditor编辑器后各类问题解决方法

3、dedeCMS更换成kindeditor后不支持MP4格式的视频上传。

4、dedeCMS更换成kindeditor后/include/plugins/code/prettify.css 文件无法找到,和编辑器页面报错(GBK版本)。

dedecms更换为kindeditor编辑器后各类问题解决方法

5、dedeCMS更换成kindeditor后GBK版本编辑器乱码。

dedecms更换为kindeditor编辑器后各类问题解决方法

6、dedeCMS更换成kindeditor后台首页在线更新模板报错。

dedecms更换为kindeditor编辑器后各类问题解决方法

解决方法:

问题一:

打开/include/inc/inc_fun_funAdmin.php文件,找到以下代码:

allowFileManager : {$allowFileManager}

更换为:

allowFileManager : {$allowFileManager},
afterBlur: function(){this.sync();}

问题二:

打开/include/kindeditor/kindeditor.js文件,找到以下代码:

function _mediaType(src) {
if (/\.(rm|rmvb)(\?|$)/i.test(src)) {
return 'audio/x-pn-realaudio-plugin';
}
if (/\.(swf|flv)(\?|$)/i.test(src)) {
return 'application/x-shockwave-flash';
}
return 'video/x-ms-asf-plugin';
}

替换为:

dedecms更换为kindeditor编辑器后各类问题解决方法

function _mediaType(src) {
if (/\.(rm|rmvb)(\?|$)/i.test(src)) {
return 'audio/x-pn-realaudio-plugin';
}
if (/\.(swf|flv)(\?|$)/i.test(src)) {
return 'application/x-shockwave-flash';
}
if (/\.(mp4)(\?|$)/i.test(src)) {
return 'video/mp4';
}
return 'video/x-ms-asf-plugin';
}

问题三:

打开/include/dialog/kindeditor_post.php文件,找到以下代码:

'media' => array('swf', 'flv', 'mp3', 'wav', 'wma', 'wmv', 'mid', 'avi', 'mpg', 'asf', 'rm', 'rmvb'),

替换为:

'media' => array('swf', 'flv', 'mp3', 'wav', 'wma', 'wmv', 'mid', 'avi', 'mpg', 'asf', 'rm', 'rmvb','mp4'),

修复以后,上传mp4视频播放正常:

dedecms更换为kindeditor编辑器后各类问题解决方法

问题四:

打开/include/inc/inc_fun_funAdmin.php文件,找到以下代码:

<script charset="utf-8" type="text/javascript">
KindEditor.ready(function(K) {
var editor1 = K.create('textarea[name="{$fname}"]', {
cssPath : '../include/plugins/code/prettify.css',

替换为:

<script charset="utf-8" src="/include/kindeditor/plugins/code/prettify.js"></script>
<script charset="utf-8" type="text/javascript">
KindEditor.ready(function(K) {
var editor1 = K.create('textarea[name="{$fname}"]', {
cssPath : '../include/kindeditor/plugins/code/prettify.css',

问题五:

将include/kindeditor/lang/zh_CN.js  这个文件的编码转换成unicode即可,或者直接用utf8版本的文件替换gbk的此文件。

dedecms更换为kindeditor编辑器后各类问题解决方法

问题六:

打开/include/inc/inc_fun_funAdmin.php文件,找到以下代码:

function SpGetNewInfo()
{
    global $cfg_version,$dsql;
    $nurl = $_SERVER['HTTP_HOST'];
    if( preg_match("#[a-z\-]{1,}\.[a-z]{2,}#i",$nurl) ) {
        $nurl = urlencode($nurl);
    }
    else {
        $nurl = "test";
    }
    $phpv = phpversion();
    $sp_os = PHP_OS;
    $mysql_ver = $dsql->GetVersion();
    $offUrl = "http://www.de"."decms.com/newinfov57.php?version={$cfg_version}&formurl={$nurl}&phpver={$phpv}&os={$sp_os}&mysqlver={$mysql_ver}";
    return $offUrl;
}

替换为:

function SpGetNewInfo()
{
    global $cfg_version,$dsql;
    $nurl = $_SERVER['HTTP_HOST'];
    if( preg_match("#[a-z\-]{1,}\.[a-z]{2,}#i",$nurl) ) {
        $nurl = urlencode($nurl);
    }
    else {
        $nurl = "test";
    }
    $phpv = phpversion();
    $sp_os = PHP_OS;
    $mysql_ver = $dsql->GetVersion();
    $seo_info = $dsql->GetOne("SELECT * FROM `#@__plus_seoinfo` ORDER BY id DESC");
    $add_query = '';
    if ( $seo_info )
    {
        $add_query .= "&alexa_num={$seo_info['alexa_num']}&alexa_area_num={$seo_info['alexa_area_num']}&baidu_count={$seo_info['baidu_count']}&sogou_count={$seo_info['sogou_count']}&haosou360_count={$seo_info['haosou360_count']}";
    }
    $query = " SELECT COUNT(*) AS dd FROM `#@__member` ";
    $row1 = $dsql->GetOne($query);
    if ( $row1 ) $add_query .= "&mcount={$row1['dd']}";
    $query = " SELECT COUNT(*) AS dd FROM `#@__arctiny` ";
    $row2 = $dsql->GetOne($query);
    if ( $row2 ) $add_query .= "&acount={$row2['dd']}";
    
    $offUrl = "http://new"."ver.a"."pi.de"."decms.com/index.php?c=info57&version={$cfg_version}&formurl={$nurl}&phpver={$phpv}&os={$sp_os}&mysqlver={$mysql_ver}{$add_query}";
    return $offUrl;
}

如果嫌麻烦不想动手改,也可以,我已经把所有问题都修复,上传到了网盘,直接下载以后按照版本覆盖原来的文件即可。

使用方法也是一样的:

1.解压压缩包,文件夹下有gb2312、utf-8两个版本的文件;

2.将对应版本文件覆盖到系统目录中;

3.系统后台中设置[系统]-[核心设置],在“Html编辑器(ckeditor,需要fck的用户可以去官网下载)”中设置:kindeditor

前台模板调用:

<link href="/include/kindeditor/plugins/runCode/runCode.css" rel="stylesheet" media="screen" type="text/css" />
<script language="javascript" type="text/javascript" src="/include/kindeditor/plugins/runCode/zztuku_runCode.js"></script>

文件下载
下载密码:发表评论并刷新可见!
下载地址
精选全网爆款产品,爆品销量榜单,全场低至0元起,还有更多云产品免费试用,带你0门槛上云

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

目前评论:12   其中:访客  0   博主  0

    • avatar snoni 0

      内容很好,希望能用。

        • avatar 大王巡山 1

          @snoni 内容很好,希望能有

        • avatar 大王巡山 1

          我要试试这个编辑器

          • avatar 撒旦撒大 1

            dsadadadada好的 我知道了 这个都可以啊

            • avatar 撒旦撒大 1

              我想看到密码是什么啊!

              • avatar 187物联 1

                大神啊,我你罗列的问题里面没有我遇到的这一个

                • avatar 187物联 1

                  提取密码是多少

                  • avatar Lina 0

                    11这到底是

                    • avatar 0

                      • avatar zyf5626 1

                        下载密码

                        • avatar zyf5626 1

                          内容很好

                          • avatar hbwgz 0

                            谢谢你解释的这么详细。不错的。