PHPackages                             mranger/yii2-ckeditor - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Templating &amp; Views](/categories/templating)
4. /
5. mranger/yii2-ckeditor

ActiveYii2-extension[Templating &amp; Views](/categories/templating)

mranger/yii2-ckeditor
=====================

CKEditor Yii2 widget working via official ckeditor composer package and using custom presets.

1.2.4(9y ago)33.2kBSD-3-ClausePHP

Since Aug 21Pushed 7y ago1 watchersCompare

[ Source](https://github.com/MrAnger/yii2-ckeditor)[ Packagist](https://packagist.org/packages/mranger/yii2-ckeditor)[ RSS](/packages/mranger-yii2-ckeditor/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)DependenciesVersions (27)Used By (0)

yii2-ckeditor widget
====================

[](#yii2-ckeditor-widget)

Установка
---------

[](#установка)

```
php composer.phar require --prefer-dist mranger/yii2-ckeditor "*"

```

или

```
"mranger/yii2-ckeditor": "*"
```

Так как у меня не получилось нормально реализовать зависимость от пакета CKEditor, бог его знает почему. Вам придется самим добавить зависимость от данного пакета в вашем composer.json Я обычно прописываю зависимость от полного пакета последней версии.

```
"ckeditor/ckeditor": "dev-full/4.7.x",

```

Более подробно можно прочитать по ссылке: [http://docs.ckeditor.com/#!/guide/dev\_package\_managers](http://docs.ckeditor.com/#!/guide/dev_package_managers).

Использование
-------------

[](#использование)

```
use mranger\ckeditor\CKEditor;

echo $form->field($model, 'content')->widget(CKEditor::className());
```

Можно создавать свои пресеты, которые будут хранить настройки вашего редактора, для этого нужно будет сначала определить папку где будут лежать файлы с пресетами (стандартный путь "@app/ckeditor-presets").

Пример кода пресета и вызова виджета:

пресет: default.php

```
return [
    'height' => '300px',
    'toolbarGroups'        => [
        ['name' => 'basicstyles', 'groups' => ['basicstyles', 'colors', 'cleanup']],
    	['name' => 'styles'],
    	['name' => 'blocks'],
    	['name' => 'colors'],
    	['name' => 'document', 'groups' => ['mode', 'document', 'doctools']],
    	['name' => 'tools'],
        ['name' => 'others'],
    	'/',
    	['name' => 'paragraph', 'groups' => ['list', 'indent', 'blocks', 'align', 'bidi']],
    	['name' => 'links'],
    	['name' => 'insert'],
    	['name' => 'clipboard', 'groups' => ['clipboard', 'undo']],
    	['name' => 'editing', 'groups' => ['find', 'selection', 'spellchecker']],
    ],
    'filebrowserUploadUrl' => Url::to(['wysiwyg/image-upload'], true),
];
```

Вызов виджета:

```
echo $form->field($model, 'content')->widget(CKEditor::className(), [
    'preset' => 'default',
    'presetDirPath' => '@app/presets', //стандартный путь "@app/ckeditor-presets" можно не указывать
]);
```

Что бы дать возможность загрузки файлов через редактор, необходимо сначала подключить необходимый экшен для загрузки файлов. Контролер может быть абсолютно любой.

```
public function actions() {
		return [
			'ckeditor-file-upload' => [
				'class' => 'mranger\ckeditor\actions\FileUploadAction',
			],
		];
	}
```

После этого в настройках(пресете) указать url по которому должны производиться запросы для загрузки файлов.

```
[
 'filebrowserUploadUrl' => Url::to(['your-controller/ckeditor-file-upload'], true),
]
```

По умолчанию разрешена загрузка только файлов с расширениями: "png, jpg, jpeg, bmp, gif, ico, swf", файлы загружаются по пути: '@webroot/upload'. Если же необходимо изменить данные параметры, то в массиве params приложения можно определить свои параметры, а именно:

```
[
 'CKEditorFileUploadAllowedExtensions' => 'gif, png, jpg', // разрешенные расширения файлов
 'CKEditorFileUploadPath' => '@webroot/ckeditor',          // путь для сохранения файлов
 'CKEditorFileUploadedUrl' => 'http://mysite.ru/ckeditor', // ссылка, по которой будут доступны сохраненые файлы
]
```

В настройках виджета можно подключить сторонние плагины для CKEditor, для этого необходимо в пресете добавить массив 'externalPlugins' c содержимым следующего формата:

```
return [
    'externalPlugins'        => [
        [
            'name' => '', // название плагина
            'url' => '',  // url до папки плагином
            'fileName' => '' , // файл плагина
        ],
    ],
];
```

###  Health Score

35

—

LowBetter than 80% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity23

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity73

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Recently: every ~18 days

Total

26

Last Release

3475d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/d71f8afb2cd0757efe9850f917e1c9e4fd81f22472057ac892db0bd4e6ef0d8d?d=identicon)[MrAnger](/maintainers/MrAnger)

---

Top Contributors

[![MrAnger](https://avatars.githubusercontent.com/u/2780423?v=4)](https://github.com/MrAnger "MrAnger (45 commits)")

---

Tags

widgetwysiwygCKEditor

### Embed Badge

![Health badge](/badges/mranger-yii2-ckeditor/health.svg)

```
[![Health](https://phpackages.com/badges/mranger-yii2-ckeditor/health.svg)](https://phpackages.com/packages/mranger-yii2-ckeditor)
```

###  Alternatives

[vova07/yii2-imperavi-widget

The imperavi redactor widget for Yii 2 framework.

243979.7k40](/packages/vova07-yii2-imperavi-widget)[marqu3s/yii2-summernote

Yii2 Summernote widget. Super simple WYSIWYG editor on Bootstrap

1691.6k8](/packages/marqu3s-yii2-summernote)[ktquez/laravel-tinymce

TinyMCE editor for Laravel and Lumen Framework

2525.4k](/packages/ktquez-laravel-tinymce)[artkost/yii2-trumbowyg

The Trumbowyg WYSIWYG Editor widget for yii2 framework

2418.3k](/packages/artkost-yii2-trumbowyg)[mati365/ckeditor5-livewire

CKEditor 5 integration for Laravel Livewire

413.9k](/packages/mati365-ckeditor5-livewire)[techguy/laravel-ckeditor

JavaScript WYSIWYG web text editor (for laravel).

1113.5k](/packages/techguy-laravel-ckeditor)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
