Imperavi Redactor Widget
— обёртка для Imperavi Redactor,
довольно неплохого WYSIWYG редактора.
Обратите внимание, что сам Imperavi Redactor — коммерческий продукт и не является OpenSource, но так как сообщество Yii купило OEM-лицензию, то вы можете бесплатно пользоваться им в проектах на Yii.
Желательно устанавливать расширение через composer.
Просто запустите в консоли команду:
$ php composer.phar require --prefer-dist vova07/yii2-imperavi-widget "*"
или добавьте
"vova07/yii2-imperavi-widget": "*"
в require
секцию вашего composer.json
файла.
Как только вы установили расширение, вы можете её использовать в своём коде:
echo \vova07\imperavi\Widget::widget([
'name' => 'redactor',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'plugins' => [
'clips',
'fullscreen'
]
]
]);
use vova07\imperavi\Widget;
echo $form->field($model, 'content')->widget(Widget::className(), [
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'plugins' => [
'clips',
'fullscreen'
]
]
]);
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'plugins' => [
'clips',
'fullscreen'
]
]
]);
// DefaultController.php
public function actions()
{
return [
'images-get' => [
'class' => 'vova07\imperavi\actions\GetAction',
'url' => 'http://my-site.com/images/', // URL адрес папки где хранятся изображения.
'path' => '@alias/to/my/path', // Или абсолютный путь к папке с изображениями.
'type' => GetAction::TYPE_IMAGES,
]
];
}
// View.php
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'imageManagerJson' => Url::to(['/default/images-get']),
'plugins' => [
'imagemanager'
]
]
]);
// DefaultController.php
public function actions()
{
return [
'files-get' => [
'class' => 'vova07\imperavi\actions\GetAction',
'url' => 'http://my-site.com/files/', // URL адрес папки где хранятся файлы.
'path' => '@alias/to/my/path', // Или абсолютный путь к папке с файлами.
'type' => GetAction::TYPE_FILES,
]
];
}
// View.php
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'fileManagerJson' => Url::to(['/default/files-get']),
'plugins' => [
'filemanager'
]
]
]);
// DefaultController.php
public function actions()
{
return [
'image-upload' => [
'class' => 'vova07\imperavi\actions\UploadAction',
'url' => 'http://my-site.com/images/', // URL адрес папки куда будут загружатся изображения.
'path' => '@alias/to/my/path' // Или абсолютный путь к папке куда будут загружатся изображения.
],
];
}
// View.php
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'imageUpload' => Url::to(['/default/image-upload'])
]
]);
// DefaultController.php
public function actions()
{
return [
'file-upload' => [
'class' => 'vova07\imperavi\actions\UploadAction',
'url' => 'http://my-site.com/files/', // URL адрес папки куда будут загружатся файлы.
'path' => '@alias/to/my/path', // Или абсолютный путь к папке куда будут загружатся файлы.
'uploadOnlyImage' => false, // Для загрузки не только изображений.
],
];
}
// View.php
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'fileUpload' => Url::to(['/default/file-upload'])
]
]);
echo \vova07\imperavi\Widget::widget([
'selector' => '#my-textarea-id',
'settings' => [
'lang' => 'ru',
'minHeight' => 200,
'plugins' => [
'clips',
'fullscreen'
]
],
'plugins' => [
'my-custom-plugin' => 'app\assets\MyPluginBundle'
]
]);
$ phpunit
Пожалуйста проверьте Imperavi Redactor документацию для более подробной информации касательно его настроек.
Пожалуйста проверьте CONTRIBUTING файл для подробной информации.
BSD Лицензия (BSD). Пожалуйста проверьте License файл для подробной информации.