This extension renders a CKEditor widget for Yii framework 2.0.
Install extension through composer:
composer require alexantr/yii2-ckeditor
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.
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()) ?>
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',
]) ?>