天天看點

CI架構中內建CKEditor編輯器的教程

CKEditor是在很多開發過程中都會用到的一個富文本編輯器,那麼如何在CI架構中使用它呢?這裡介紹了在CI下使用CKEditor的方法,版本比較低,是在CI 1.7.3下使用fckeditor 2.6.6。供大家參考。

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 );

?>如何聯系我:【萬裡虎】www.bravetiger.cn

【QQ】3396726884 (咨詢問題100元起,幫助解決問題500元起)

【部落格】http://www.cnblogs.com/kenshinobiy/