Искать  
 
   
1 из 3
1
Встраивание FCKeditor в ExpressionEngine
Отправлено: 17 Август 2008 08:40 A.M.   [ Игнорировать ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27

Источник: mwoa.ru

FCKeditor, пожалуй, является самым настраиваемым и мощным WYSIWYG редактором. Задача состояла в том, как же можно использовать этот мощный редактор для публикации новостей на сайте? После некоторых попыток анализа не было найдено никакого решения, кроме как внедрение непосредственно в сам код.
Всего вам придется отредактировать два файла. Один из них является файлом ExpressionEngine, другой - частью FCKeditor. Я загрузил папку с редактором в /system/modules dir. Теперь приступим к редактированию.

fckeditor_php5.php
В зависимости от того, какой версией PHP вы пользуетесь, вы должны будете отредактировать либо этот файл, либо файл fckeditor_php4.php. Для того, чтобы редактор мог работать с системой, нам необходимо вернуть результаты в переменную, вместо того, чтобы вывести сразу же на экран (EE использует переменную $r). По умолчанию редактор использует оператор echo чтобы вывести результаты своей работы на экран, но нам это абсолютно не надо, поэтому мы должны запенить оператор echo на return.

Найдите метод Create() и замените его следующим кодом:

function Create()
{
// было
// echo $this->CreateHtml() ;
return $this->CreateHtml() ;

cp.publish.php
Теперь, после того, как мы научили FCKeditor работать с ExpressionEngine, нам нужно сказать EE о том, что мы будем использовать. Откройте файл cp.publish.php file в директории /system/cp directory. Вы должны найти строчку, которую мы будем менять. В моей EE 1.6.2 это была 2747ая строчка:

$r .= $DSP->input_textarea(’field_id_’.$row[’field_id’]$field_data$rows‘textarea’‘100%$field_js$convert_ascii$text_direction); 

Закомментируйте эту строчку и вставьте после неё следующее:

include_once(dirname(__FILE__)."/../modules/fckeditor/fckeditor.php");
$oFCKeditor = new FCKeditor(’field_id_’.$row[’field_id’]) ;
$oFCKeditor->BasePath ‘modules/fckeditor/;
$oFCKeditor->Value $field_data;
$r .= $oFCKeditor->Create(); 

Вот и все smile Вы получили работающую версию fckEditor в EE. Однако для полной совместимости вам необходимо загрузить пустой файл с именем lang.fckeditor.php в system/language/english dir, так как до этого мы поместили наш FCKeditor в директорию modules, а ExpressionEngine пытается найти языковой файл для каждой папки, расположенной в директории modules .

Для загрузки файлов надо отредактировав файл коннектора, который располагается примерно в следующем месте: /editor/filemanager/connectors/php

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 12:10 P.M.   [ Игнорировать ]   [ # 1 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  891
Зарегистрирован  2008-01-07

минус в том что надо при апгрейде постоянно править файлы :(

Профиль
 
 
Отправлено: 17 Август 2008 12:30 P.M.   [ Игнорировать ]   [ # 2 ]
Администратор
RankRankRankRank
Всего сообщений:  1354
Зарегистрирован  2008-01-02

для тех, кто уже испытал данный способ встройки - если

include_once(dirname(__FILE__)."/../modules/fckeditor/fckeditor.php");
$oFCKeditor = new FCKeditor(’field_id_’.$row[’field_id’]) ;
$oFCKeditor->BasePath ‘modules/fckeditor/;
$oFCKeditor->Value $field_data;
$r .= $oFCKeditor->Create(); 

вставить не после, а до строчки

$r .= $DSP->input_textarea(’field_id_’.$row[’field_id’]$field_data$rows‘textarea’‘100%,... 

или после, но на строчку 2760 - будет работать?

 Подпись 

booooring…

Профиль
 
 
Отправлено: 17 Август 2008 01:07 P.M.   [ Игнорировать ]   [ # 3 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  891
Зарегистрирован  2008-01-07

Думаеш про расширение? smile Я позже попробую

Профиль
 
 
Отправлено: 17 Август 2008 01:57 P.M.   [ Игнорировать ]   [ # 4 ]
Новичок
Rank
Всего сообщений:  26
Зарегистрирован  2008-01-14

Насколько я знаю уже есть готовые расширения для работы с WYSIWYG редакторами TinyMCE, FCKEditor и др. вот ссылка

Профиль
 
 
Отправлено: 17 Август 2008 02:06 P.M.   [ Игнорировать ]   [ # 5 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  891
Зарегистрирован  2008-01-07
Edson - 17 Август 2008 01:57 P.M.

Насколько я знаю уже есть готовые расширения для работы с WYSIWYG редакторами TinyMCE, FCKEditor и др. вот ссылка

Ну разширения то есть, но незнаю может у меня руки крывые но FCKEditor у меня раньше не смог нормально работать, в TinyMCE проблема з файламы


А по статте, то непонятно зачем FCKEditor заливать в папку с модулями, а потом еще и пустой язиковый файл добавлять smile

Профиль
 
 
Отправлено: 17 Август 2008 02:57 P.M.   [ Игнорировать ]   [ # 6 ]
Новичок
Rank
Всего сообщений:  26
Зарегистрирован  2008-01-14

Я пользуюсь ext_fckeditor_v1_1_9.zip (см. вложение), работает, проблем нет. Прочитай ветку на форуме EE, может поможет.

Приложения с файлами
ext_fckeditor_v1_1_9.zip  (Размер файла: 4KB - Загрузок: 680)
Профиль
 
 
Отправлено: 17 Август 2008 06:19 P.M.   [ Игнорировать ]   [ # 7 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27
Calm - 17 Август 2008 12:30 P.M.

для тех, кто уже испытал данный способ встройки - если

include_once(dirname(__FILE__)."/../modules/fckeditor/fckeditor.php");
$oFCKeditor = new FCKeditor(’field_id_’.$row[’field_id’]) ;
$oFCKeditor->BasePath ‘modules/fckeditor/;
$oFCKeditor->Value $field_data;
$r .= $oFCKeditor->Create(); 

вставить не после, а до строчки

$r .= $DSP->input_textarea(’field_id_’.$row[’field_id’]$field_data$rows‘textarea’‘100%,... 

или после, но на строчку 2760 - будет работать?

дак а мы же ее комментируем эту строчку, в общем буду проверять

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 06:31 P.M.   [ Игнорировать ]   [ # 8 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27
Edson - 17 Август 2008 02:57 P.M.

Я пользуюсь ext_fckeditor_v1_1_9.zip (см. вложение), работает, проблем нет. Прочитай ветку на форуме EE, может поможет.

что то я не совсем понял с расширением, установил, указал путь в настройках, а что дальше?

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 08:45 P.M.   [ Игнорировать ]   [ # 9 ]
Новичок
Rank
Всего сообщений:  26
Зарегистрирован  2008-01-14

На странице Admin ›  Utilities ›  Extensions Manager ›  FCKeditor Extension for EE

В поле “URL of FCKEditor Script”  указываем: http://main-site.ru/system/fckeditor/fckeditor.js
В поле “FCKEditor Configuration” указываем:

var oFCKeditor = new FCKeditor(textAreaName); 
//Configuration goes here 
oFCKeditor.BasePath '/system/fckeditor/';
oFCKeditor.ReplaceTextarea() ; 

Все пути указаны для случая, когда папка fckeditor расположена внутри папки system.
При открытии страницы публикации/редактирования необходимо выполнить двойной щелчек в нужном поле, только после этого в него загрузится FCKeditor. В Опере у меня не работает, проверял в IE 6,7 без проблем...
Подробности и дополнительные примеры конфигурирования приведены здесь

Сам FCKEditor можно скачать здесь

Профиль
 
 
Отправлено: 17 Август 2008 08:48 P.M.   [ Игнорировать ]   [ # 10 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27

var oFCKeditor = new FCKeditor(textAreaName);

textAreaName это я так понимаю одно из custom fileds, тоесть summary например?

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 09:01 P.M.   [ Игнорировать ]   [ # 11 ]
Новичок
Rank
Всего сообщений:  26
Зарегистрирован  2008-01-14
mrtt - 17 Август 2008 08:48 P.M.

var oFCKeditor = new FCKeditor(textAreaName);

textAreaName это я так понимаю одно из custom fileds, тоесть summary например?

У меня в настройке указано именно так:

var oFCKeditor = new FCKeditor(textAreaName); 

при этом редактор открывается в любом поле (Summary, Body, Extended text), после двойного щелчка.

Профиль
 
 
Отправлено: 17 Август 2008 09:03 P.M.   [ Игнорировать ]   [ # 12 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  891
Зарегистрирован  2008-01-07
mrtt - 17 Август 2008 08:48 P.M.

var oFCKeditor = new FCKeditor(textAreaName);

textAreaName это я так понимаю одно из custom fileds, тоесть summary например?

нет тут по другому, все поля которые указаны как - текстовая область, будут показивать редактор

Профиль
 
 
Отправлено: 17 Август 2008 09:06 P.M.   [ Игнорировать ]   [ # 13 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27

1. Скачал FCKeditor_2.6.3
2. Залил папку fckeditor со всем содержимым в корневую папку сайта
3. закачал, проинсталлировал расширение, прописал в настройках
URL of FCKEditor Script http://***.ru/fckeditor/fckeditor.js

var oFCKeditor = new FCKeditor(textAreaName); 
//Configuration goes here 
oFCKeditor.BasePath 'http://***.ru/fckeditor/';
oFCKeditor.ReplaceTextarea() ; 

4. требуемого результата не получил

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 09:08 P.M.   [ Игнорировать ]   [ # 14 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  1423
Зарегистрирован  2007-12-27
mrtt - 17 Август 2008 06:19 P.M.
Calm - 17 Август 2008 12:30 P.M.

для тех, кто уже испытал данный способ встройки - если

include_once(dirname(__FILE__)."/../modules/fckeditor/fckeditor.php");
$oFCKeditor = new FCKeditor(’field_id_’.$row[’field_id’]) ;
$oFCKeditor->BasePath ‘modules/fckeditor/;
$oFCKeditor->Value $field_data;
$r .= $oFCKeditor->Create(); 

вставить не после, а до строчки

$r .= $DSP->input_textarea(’field_id_’.$row[’field_id’]$field_data$rows‘textarea’‘100%,... 

или после, но на строчку 2760 - будет работать?

дак а мы же ее комментируем эту строчку, в общем буду проверять

в общем сделал как в описании - при ред/добавлении пустая страница ))
что за невезуха с этими редакторами (с кривыми руками) TimyMCE работает, но не имеет менеджера картинок, а иной раз и портит вид главной страницы админки (тоесть вообще не показывается страница)
FCKEditor имеет все, но настраивается геморно.

 Подпись 

ExpressionEngine - SEO-ориентированный движок

Профиль
 
 
Отправлено: 17 Август 2008 09:08 P.M.   [ Игнорировать ]   [ # 15 ]
Администратор
Avatar
RankRankRankRank
Всего сообщений:  891
Зарегистрирован  2008-01-07

у меня тоже ничего не вийшло, может нада не саму последнюю версию FCKeditor?

Профиль
 
 
   
1 из 3
1