ashanet/ckeditor

本包的最新版本(1.5)没有可用的许可证信息。

CakePHP 3.x & 4.x 的 CkEditor 插件

维护者

详细信息

github.com/ashanet/CkEditor

源代码

安装: 19

依赖项: 0

建议者: 0

安全: 0

星标: 0

关注者: 0

分支: 5

类型:cakephp-plugin

1.5 2020-08-27 20:02 UTC

This package is auto-updated.

Last update: 2024-09-29 05:55:49 UTC


README

安装

您可以使用 composer 将此插件安装到您的 CakePHP 应用程序中。

安装 composer 包的推荐方式是

composer require ashanet/ckeditor

然后在 config/bootstrap.php 中添加

$this->addPlugin('CkEditor');

在 src/Controller/AppController.php 或您想要使用 CKEditor 的任何控制器中添加

$this->viewBuilder()->setHelpers(['CkEditor.Ck']);

最后,在您的模板文件中,只需添加以下代码来调用 CKEditor

echo $this->Ck->control('field_name');

这等同于使用

echo $this->Form->control('field_name');

但是 CKEditor 将被加载,而不是文本区域!

高级选项

您可以根据需要调整 CKEditor 和表单输入。在这方面具有完全的灵活性。

详细说明如下

echo $this->Form->control($input, $options, $ckEditorOptions, $ckEditorUrl, $ckEditorPlugins);
@param string $input

字段的名称,可以是 field_name 或 model.field_name

@param array $options

选项包括 $options['label'] 用于自定义标签和任何其他自定义 Form Helper 选项

@param array $ckEditorOptions

这将传递来自 http://docs.ckeditor.com/#!/guide/dev_configuration 的任何选项到 CKEditor

@param string $ckEditorUrl

这提供了一个覆盖 CKEditor URL 的选项。如果需要,您可以使用本地 URL。

@param array $ckEditorPlugins

本地安装的 CKEditor 插件的数组,每个插件为一个子数组,格式如 CKEditor 文档中指定,请参阅 https://docs.ckeditor.com/ckeditor4/latest/api/CKEDITOR_plugins.html#addExternal

示例

使用关联的字段名称

echo $this->Ck->control('category.description');

生成自定义标签

echo $this->Ck->control('field_name', ['label' => 'A unique label']);

http://docs.ckeditor.com/#!/guide/dev_configuration 添加选项到 CKEditor

echo $this->Ck->control('field_name', [], ['fullPage' => true, 'allowedContent' => 'true']);

加载 CKEditor 的本地版本或不同版本

echo $this->Ck->control('field_name', [], [], '/js/ckeditor.js');

加载本地安装的 CKEditor 插件

echo $this->Ck->control('field_name', [], [], null, [['myplugin', '/ckplugins/myplugin/', 'myplugin.js']]);

显示所有选项的示例

echo $this->Ck->control('field_name', ['label' => 'A unique label'], ['fullPage' => true, 'allowedContent' => 'true'], '/js/ckeditor.js', [['myplugin', '/ckplugins/myplugin/', 'myplugin.js']]);