CI框架中集成CKEditor编辑器的教程
author:一佰互联 2019-04-29   click:159

1、将fckeditor目录置入CI_PATH/system/plugins/

2、在CI_PATH/system/application/config/config.php中加入:

$config["fckeditor_basepath"] = "/system/plugins/fckeditor/";
$config["fckeditor_toolbarset_default"] = "Default";

3、创建helper,在/system/application/helpers新建form_helper.php

复制代码 代码如下:
<?php
if (!defined("BASEPATH")) exit("No direct script access allowed");
include_once( BASEPATH . "/helpers/form_helper".EXT);
function form_fckeditor($data = "", $value = "", $extra = "")
{
     $CI =& get_instance();
    $fckeditor_basepath = $CI->config->item("fckeditor_basepath");
     require_once( $_SERVER["DOCUMENT_ROOT"] . $fckeditor_basepath. "fckeditor.php" );
    $instanceName = ( is_array($data) && isset($data["name"])   ) ? $data["name"] : $data;
    $fckeditor = new FCKeditor($instanceName);
     if( $fckeditor->IsCompatible() )
    {
         $fckeditor->Value = html_entity_decode($value);
        $fckeditor->BasePath = $fckeditor_basepath;
         if( $fckeditor_toolbarset = $CI->config->item("fckeditor_toolbarset_default"))
                $fckeditor->ToolbarSet = $fckeditor_toolbarset;
         if( is_array($data) )
        {
            if( isset($data["value"]) )
                $fckeditor->Value = html_entity_decode($data["value"]);
             if( isset($data["basepath"]) )
                $fckeditor->BasePath = $data["basepath"];
             if( isset($data["toolbarset"]) )
                $fckeditor->ToolbarSet = $data["toolbarset"];
             if( isset($data["width"]) )
                $fckeditor->Width = $data["width"];
             if( isset($data["height"]) )
                $fckeditor->Height = $data["height"];
        }
        return $fckeditor->CreateHtml();
    }
    else
    {
        return form_textarea( $data, $value, $extra );
    }
}
?>

4、在项目中使用fckeditor

复制代码 代码如下:
<?php
$this->load->helper("form_helper");
$data = array(
    "name"        => "newsContent",
    "id"          => "newsContent",
    //"toolbarset"  => "Advanced",
    "basepath"    => $this->config->item("fckeditor_basepath"),
    "width"       => "80%",
    "height"      => "200"
);
echo form_fckeditor( $data );
?>