Yii: Разбираемся с расширением newtinymce + elfinder от Bogdan Savluk (z_bodya)

Yii: Разбираемся с расширением newtinymce + elfinder от Bogdan Savluk (z_bodya) Как установить и настроить расширение extension newtinymce (от Bogdan Savluk) вместе с elfinder. Визуальный редактор с возможностью загрузки изображений.

Всё началось с игр в Eximus Commerce - интернет магазине на Yii. Меня не устроил визуальный редактор (расширение tinymce) тем, что он не обеспечивает загрузку картинок.

Скачал в папку extensions два расширения: newtinymce и elfinder.

Дальше в modules/admin/components/SRichTextarea.php изменяю ссылку на расширение (z_bodya-tinymce) и соответственно родительский класс STinyMceArea меняю на класс нового расширения - TinyMce.

Yii::import('ext.z_bodya-tinymce.*');

/**
 * Draw textarea widget
 */
class SRichTextarea extends STinyMceArea TinyMce     
...

В самом же TinyMce.php (в папке расширения z_bodya-tinymce) прописываю свойства для файлового менеджера. (в обычной структуре лучше если знать, то устанавливать свойства во вне файла расширения, например, через виджет, как это в инструкции написано; здесь же у меня не получилось это).

...
//public $fileManager = false; //<-- было
public $fileManager = array(
           'class' => 'ext.elFinder.TinyMceElFinder',
           'connectorRoute'=>'admin/elfinder/connector',
);
...

Дальше в /modules/admin/controllers создаю контроллер ElfinderController

<?php

class ElfinderController extends RController
{
    public function actions()
    {
        return array(
            'connector' => array(
                'class' => 'ext.elFinder.ElFinderConnectorAction',
                'settings' => array(
                    'root' => Yii::getPathOfAlias('webroot') . '/uploads/',
                    'URL' => Yii::app()->baseUrl . '/uploads/',
                    'rootAlias' => 'Home',
                    'mimeDetect' => 'none'
                )
            ),
        );
    }
}     

Должно работать. Появился значок вставки картинки с загрузкой через elfinder.

Yii tinymce + elFinder

Но выдаётся сообщение: Не удалось соединиться с сервером (unable to connect to backend).

Yii elfinder Не удалось соединиться с сервером (unable to connect to backend)

Оказалось дело в роутах. Там переставляются местами папка admin и методы, ошибка пропала, когда вписал перекрывающий роут.

'admin/elfinder/connector'=>'admin/elfinder/connector', //<-- доб. перед общим маршрутом
'admin/<module:\w+>/<controller:\w+>'=>'<module>/admin/<controller>',
Yii настройка elfinder
Источник: loco.ru

almix
Разработчик Loco, автор статей по веб-разработке на Yii, CodeIgniter, MODx и прочих инструментах. Создатель Team Sense.

Вы можете почитать все статьи от almix'а.



Другие статьи по этой теме:

Комментарии (0)     Подпишитесь на RSS комментариев к этой статье.