分享

ecshop更换升级FCKeditor编辑器到Kindeditor,支持图片批量上传,和百度地图添加

 mylib972 2014-05-18

ecshop更换升级FCKeditor编辑器到Kindeditor,支持图片批量上传,和百度地图添加的功能,kindeditor是个不错的编辑器。

1,首先下载kindeitor最新版放到includes目录

2,删除 admin/goods.php 大约107行  include_once(ROOT_PATH . 'includes/fckeditor/fckeditor.php'); // 包含 html editor 类文件

3,删除 admin/goods.php 大约414行  create_html_editor('goods_desc', $goods['goods_desc']); 修改成:

 $FCKeditor = create_html_kindeditor('goods_desc', $goods['goods_desc'], 'theForm');// 最后一个参数theForm是新增的,可以指定后台包含编辑器的表单的名字。

 $smarty->assign('FCKeditor',    $FCKeditor); 这样,ecshop模版里面原有的$FCKeditor就不用再去修改了。

4. 修改 admin/includes/lib_main.php文件,找到大概 大约324行增加create_html_kindeditor行数,代码如下:

/**

 * 生成 kindeditor

 * @param   string  input_name  输入框名称

 * @param   string  input_value 输入框值

 * @param string form_name   所在表单名称

 */

function create_html_kindeditor($input_name, $input_value = '', $form_name = '')

{

    global $smarty;

    $kindeditor = "<script src='/includes/kindeditor/kindeditor-all-min.js' charset='utf-8'></script>

<script src='/includes/kindeditor/lang/zh_CN.js' charset='utf-8'></script>

<script src='/includes/kindeditor/plugins/code/prettify.js' charset='utf-8'></script>

    <script>

   

        KindEditor.ready(function(K) {

var editor1 = K.create('textarea[name=".$input_name."]', {

cssPath : '/includes/kindeditor/plugins/code/prettify.css',

uploadJson : '/includes/kindeditor/php/upload_json.php',

fileManagerJson : '/includes/kindeditor/php/file_manager_json.php',

afterBlur : function() {

                  this.sync();

                  K.ctrl(document, 13, function() {

                  K('form[name=" . $form_name . "]')[0].submit();

        });

        K.ctrl(this.edit.doc, 13, function() {

            K('form[name=" . $form_name . "]')[0].submit();

        });

}

});

prettyPrint();

});

    </script>

    <textarea id=\"$input_name\" name=\"$input_name\" style='width:700px;height:300px;'>$input_value</textarea>";

    return $kindeditor;

}

//***说明,这里调用的aterBlur的JS函数,就可以解决ecshop更换kindeditor编辑器,提交数据不保存的原因了,因为如果没调用editor的sync函数的话,编辑器里面生成的内容,没办法保存提交的。

5. kindeditor中 ./php目录下的 file_manager_json.php和upload_json.php中的

$php_path 和 $php_url 改成自己想要的就行了。


友情提醒:一般来说这种开源编辑器难免有漏洞公布出来,最好是把kindeditor的路径给改了。这样别人访问不到editor的路径,可以介绍风险。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多