alexantr/yii2-ckeditor

CKEditor widget for Yii 2

Installs: 3 184

Dependents: 0

Suggesters: 0

Stars: 1

Watchers: 1

Forks: 1

Open Issues: 1

Type:yii2-extension

2.2.0 2018-08-20 11:04 UTC

README

This extension renders a CKEditor widget for Yii framework 2.0.

Latest Stable Version Total Downloads License Build Status

Installation

Install extension through composer:

composer require alexantr/yii2-ckeditor

CKEditor version

This extension works with stable standard-all build. The standard-all build includes all official CKSource plugins with only those from the standard installation preset compiled into the ckeditor.js file and enabled in the configuration.

Note: Since version 2.0 the extension loads CKEditor from CDN.

Usage

The following code in a view file would render a CKEditor widget:

<?= alexantr\ckeditor\CKEditor::widget(['name' => 'attributeName']) ?>

Configuring the CKEditor options should be done using the clientOptions attribute:

<?= alexantr\ckeditor\CKEditor::widget([
    'name' => 'attributeName',
    'clientOptions' => [
        'extraPlugins' => 'autogrow,colorbutton,colordialog,iframe,justify,showblocks',
        'removePlugins' => 'resize',
        'autoGrow_maxHeight' => 900,
        'stylesSet' => [
            ['name' => 'Subscript', 'element' => 'sub'],
            ['name' => 'Superscript', 'element' => 'sup'],
        ],
    ],
]) ?>

If you want to use the CKEditor widget in an ActiveForm, it can be done like this:

<?= $form->field($model, 'attributeName')->widget(alexantr\ckeditor\CKEditor::className()) ?>

Using global configuration (presets)

To avoid repeating identical configuration in every widget you can set global configuration in @app/config/ckeditor.php. Options from widget's clientOptions will be merged with this configuration.

You can change default path with presetPath attribute:

<?= alexantr\ckeditor\CKEditor::widget([
    'name' => 'attributeName',
    'presetPath' => '@backend/config/my-ckeditor-config.php',
]) ?>