Чем хорош FCKEditor так это тем, что в нем есть встроенный менеджер закачки файлов. Идем на сайт
FCkEditor и скачиваем последнюю версию. Создаем папку www\js\fckeditor и распаковываем туда содержимое архива.
Создаем файл вида views\fckeditor.php
<!-- FCKEditor -->
<script type="text/javaSCRIPT" src="<?=base_url()?>js/fckeditor/fckeditor.js"></script>
<script type="text/javaSCRIPT">
var oFCKeditor = new FCKeditor("<?=$id?>"); // привязка к textarea с id
oFCKeditor.ToolbarSet="Default"; // число кнопочек на инструментальной панели
oFCKeditor.Width = 800;
oFCKeditor.Height = 400;
oFCKeditor.BasePath="<?=base_url()?>js/fckeditor/"; //путь к fckeditor
oFCKeditor.ReplaceTextarea(); // вставка текста из textarea с id="$id"
</script>
<!-- /FCKEditor -->
Создаем хелпер www\system\application\helpers\fckeditor_helper.php
<?php
/**
*
* Описание файла: Хелпер для вывода FCKEditor
*
* @изменён 8.9.2009
*/
if (!defined('BASEPATH')) exit('No direct script access allowed');
//Возвращает код редактора для элемента с указанным ID
function show_fckeditor ($id) {
$CI = &get_instance ();
$data = array ();
$data['id'] = $id;
//Считываем код из файла
$code = $CI->load->view ('fckeditor',data,TRUE);
return $code;
}
?>
Произведем настройку FCKEditor.
Настроим директорию для загрузки картинок. Создадим в корне папки www\images\image
www\js\fckeditor\editor\filemanager\connectors\php\config.php
Находим строчку
$Config['Enabled'] = false ;
заменяем ее на
$Config['Enabled'] = true ;
Задаем путь к папке где храняться картинки:
Находим и меняем
$Config['UserFilesPath'] = '/userfiles/' ;
на
$Config['UserFilesPath'] = '/images/' ;
Открываем файл system/plugins/fckeditor/fckconfig.js
Находим и меняем строки
var _FileBrowserLanguage = 'asp' ; // asp | aspx | cfm | lasso | perl | php | py
var _QuickUploadLanguage = 'asp' ; // asp | aspx | cfm |
на
var _FileBrowserLanguage = 'php' ;
var _QuickUploadLanguage = 'php' ;
Там же проконтролируем наличие строки:
FCKConfig.ImageUpload = true ;
Не забывайте что функция upload не закрыта авторизацией.
Работа с редактором производится так:
В файле вида созадем textarea указываем id (например id=»anons»)
Добавляем в файл вида строку
В контроллере из которого будет вызываться вид. Перед вызовом вида добавляем вызов хелпера $this->load->helper('fckeditor');