Ecshop中FCKeditor提换成KindEditor

Ecshop中FCKeditor提换成KindEditor

最近firefox升级到版本17.0以后发现ecshop后台编辑器fckeditor不能显示的问题,
解决办法两个:

一:安装IEtab的插件

解决办法就是你在firefox里加个IEtab的插件,在插件选项里加上fckeditor的网址。
插件地址https://addons.mozilla.org/zh-CN/firefox/addon/1419

二:直接替换原来的fckeditor编辑器,使用KindEditor

1. 官网下载最新版kindeditor-4.1zip

2.kindeditor-4.1zip将其复制到网站根目录的includes目录下文件夹名称命名为 kindeditor

3.打开admin/includes/lib_main.php,查找 create_html_editor
将原来的创建编辑器函数

function create_html_editor($input_name, $input_value = '')
{
global $smarty;

$editor = new FCKeditor($input_name);
$editor->BasePath   = ‘../includes/fckeditor/’;
$editor->ToolbarSet = ‘Normal’;
$editor->Width      = ‘100%’;
$editor->Height     = ‘320’;
$editor->Value      = $input_value;
$FCKeditor = $editor->CreateHtml();
$smarty->assign(‘FCKeditor’, $FCKeditor);
}
修改为:

function create_html_editor($input_name, $input_value = '')
{
global $smarty;
$kindeditor="<script charset='utf-8' src='../includes/kindeditor/kindeditor-min.js'></script>
<script>
var editor;
KindEditor.ready(function(K) {
editor = K.create('textarea[name=\"$input_name\"]', {
allowFileManager : true,
width : '700px',
height: '300px',
resizeType: 0
});
});
</script>
<textarea id=\"$input_name\" name=\"$input_name\" style='width:700px;height:300px;'>$input_value</textarea>
";
$smarty->assign('FCKeditor', $kindeditor);
}

4. 上传目录修改includes/kindeditor/php/upload_json.php如下:

//文件保存目录路径

$save_path = $php_path . '../../../images/upload/';

//文件保存目录URL

$save_url = $php_url . '../../../images/upload/';

5.浏览服务器路径修改includes/kindeditor/php/file_manager_json.php如下:

//根目录路径,可以指定绝对路径,比如 /var/www/attached/

$root_path = $php_path . '../../../images/upload/';

//根目录URL,可以指定绝对路径,比如 http://www.yoursite.com/attached/

$root_url = $php_url . '../../../images/upload/';

最后一步2.7.3版本的ecshop中在admin/template/goods_info.htm中 将提交按钮

<input type="button" value="{$lang.button_submit}" onclick="validate('{$goods.goods_id}')" />

修改为

<input type="submit" value="{$lang.button_submit}" onclick="validate('{$goods.goods_id}')" />

不然程序无法读取编辑器修改的内容.

PS:最近发现KindEditor默认是开启了html标签过滤,这样的话有时候我们在后台编辑的一些内容导致前台显示不正确,不如关闭这个自动过滤功能

function create_html_editor($input_name, $input_value = '')
{
global $smarty;
$kindeditor="<script charset='utf-8' src='../includes/kindeditor/kindeditor-min.js'></script>
<script>
var editor;
KindEditor.ready(function(K) {
editor = K.create('textarea[name=\"$input_name\"]', {
filterMode : false,
allowFileManager : true,
width : '700px',
height: '300px',
resizeType: 0
});
});
</script>
<textarea id=\"$input_name\" name=\"$input_name\" style='width:700px;height:300px;'>$input_value</textarea>
";
$smarty->assign('FCKeditor', $kindeditor);
}

目前还未发生什么问题,有问题的朋友可以Q我一起讨论