繁体   English   中英

如何在yii2中创建Ckeditor

[英]how to create Ckeditor in yii2

使用以下代码

<?php echo $form->field($model, 'txtContent')->widget(CKEditor::className(), [
    'editorOptions' => [
        'preset' => 'full', 
        'inline' => false, 
    ],
]); ?>

它显示错误(#1)。

使用以下位置下载ckeditor zip文件https://github.com/MihailDev/yii2-ckeditor

请帮助任何人......

确保您告诉我们错误说明了什么,您可以将您的代码与此工作示例进行比较:

<?php    
use dosamigos\ckeditor\CKEditor;

    $form = ActiveForm::begin();
    echo $form->field($model, 'attribute_name')->widget(CKEditor::className(), [
        'options' => ['rows' => 6],
        'preset' => 'advanced'
    ]);

安装的小部件

作曲家需要2 amigos/yii2-ckeditor-widget:〜1.0

编辑器的两个例子显示1) yii2-ckeditor-widget 2) vova07 / yii2-imperavi-widget

A) yii2-ckeditor-widget

转到根目录。 就像,我的Yii项目是在htdocs/Yii.

所以,在命令中键入它。

步骤1) root@stackinfo-desktop:~# cd /opt/lampp/htdocs/yii

步骤2) root@stackinfo-desktop:~# cd /opt/lampp/htdocs/yii# php composer.phar require "2amigos/yii2-ckeditor-widget" "*"

它将显示如下:

./composer.json已更新使用包信息加载composer存储库更新依赖项(包括require-dev)无需安装或更新写入锁定文件生成自动加载文件

要么

步骤2)转到htdocs / Yii / composer.json文件

composer.json

查找,“ require ”部分。 添加这一行"2amigos/yii2-ckeditor-widget" : "*"

"require": {
        .
        .
        "2amigos/yii2-ckeditor-widget" : "*"
    }

所以,现在安装了扩展程序

步骤3)转到您必须使用它的页面。

<?
use dosamigos\ckeditor\CKEditor;

.
.
// Your code.
.
.
<?= $form->field($model, 'description')->widget(CKEditor::className(), [
    'options' => ['rows' => 6],
    'preset' => 'basic'
]) ?> 

B) vova07 / yii2-imperavi-widget

转到根目录。 就像,我的Yii项目是在htdocs/Yii

所以,在命令中键入它。

步骤1) root@stackinfo-desktop:~# cd /opt/lampp/htdocs/yii

步骤2) root@stackinfo-desktop:~# cd /opt/lampp/htdocs/yii# php composer.phar require --prefer-dist vova07/yii2-imperavi-widget "*"

它将显示如下:

./composer.json已更新使用包信息加载composer存储库更新依赖项(包括require-dev) - 安装vova07 / yii2-imperavi-widget(1.2.10)
下载:100%

写入锁定文件生成自动加载文件

要么

步骤2)转到htdocs / Yii / composer.json文件

composer.json

查找,“ 需要 ”部分。 添加此行"vova07/yii2-imperavi-widget": "*"

"require": {
        .
        .
        "vova07/yii2-imperavi-widget": "*"
    }

所以,现在安装了扩展程序

步骤- 3)转到您的网页 ,你必须使用它。

<?
use vova07\imperavi\Widget;

.
.
// Your code.
.
.
<?= $form->field($model, 'description')->widget(Widget::className(), [
    'settings' => [
    'lang' => 'ru',
    'minHeight' => 200,
    'plugins' => [
      'clips',
      'fullscreen'
    ]
  ]
]);?>

[注意:'描述'只是你的属性。]

因为您手动下载了它,所以无法通过“自动加载”加载窗口小部件。

你必须通过Composer安装它。 这里的教程。

在命令中输入this。 在项目的根源:

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

或者编辑composer文件夹中的autoload_psr4和...文件(记录密钥),这是不推荐的。

对于预设 ,除了标准 - BASIC - FULL

 <?= $form->field($model, 'text')>widget(\dosamigos\ckeditor\CKEditor::className(), [
            'preset' => 'basic',
             # 'options' => ['rows' => 6], // no need. textarea is hidden.
        ]) ?>

你也可以自定义:

use dosamigos\ckeditor\CKEditor;

<?php $form = ActiveForm::begin(['id' => 'help-form']); ?>

    <?= $form->field($model, 'title')->textInput(); ?>

    <?= $form->field($model, 'body')->widget(CKEditor::className(), [
        'preset' => 'custom',
        'clientOptions' => [
        # 'extraPlugins' => 'pbckcode', *//Download already and in the plugins folder...*
            'toolbar' => [
                [
                    'name' => 'row1',
                    'items' => [
                        'Source', '-',
                        'Bold', 'Italic', 'Underline', 'Strike', '-',
                        'Subscript', 'Superscript', 'RemoveFormat', '-',
                        'TextColor', 'BGColor', '-',
                        'NumberedList', 'BulletedList', '-',
                        'Outdent', 'Indent', '-', 'Blockquote', '-',
                        'JustifyLeft', 'JustifyCenter', 'JustifyRight', 'JustifyBlock', 'list', 'indent', 'blocks', 'align', 'bidi', '-',
                        'Link', 'Unlink', 'Anchor', '-',
                        'ShowBlocks', 'Maximize',
                        // 'pbckcode', 
                    ],
                ],
                [
                    'name' => 'row2',
                    'items' => [
                        'Image', 'Table', 'HorizontalRule', 'SpecialChar', 'Iframe', '-',
                        'NewPage', 'Print', 'Templates', '-',
                        'Cut', 'Copy', 'Paste', 'PasteText', 'PasteFromWord', '-',
                        'Undo', 'Redo', '-',
                        'Find', 'SelectAll', 'Format', 'Font', 'FontSize',
                        'base64image',
                    ],
                ],
            ],
        ],
    ]);
    ?>

    <div class="form-group">
        <?= Html::submitButton('Submit', ['class' => 'btn btn-primary', 'name' => 'contact-button']) ?>
    </div>

<?php  ActiveForm::end();?>

要么

'clientOptions' => [
                        // 'skin'=> $type,
                        'toolbar' => [
                            ['items' => [
                                    'Source', '-',
                                ] ],
                            ['items' => [
                                    'Bold', 'Italic', 'Underline', 'Strike', '-',
                                    'NumberedList', 'BulletedList', '-',
                                ] ], .........

对于其他皮肤,您可以从此处手动下载皮肤或包并在以下地址替换:

... \\ vendor \\ ckeditor \\ ckeditor

您可以动态使用多个皮肤。

$type = moono-dark;
#code...
      'skin'=> $type,

排队:

<?php \dosamigos\ckeditor\CKEditorInline::begin(['preset' => 'custom', 'clientOptions' => [
    'extraPlugins' => 'pbckcode',
    'toolbarGroups' => [
        ['name' => 'undo'],
        ['name' => 'pbckcode'] // NEW PLUGIN!
    ]
]]) ?>

添加代码的开头

use mihaildev\ckeditor\CKEditor;
<?=    
use zxbodya\yii2\tinymce\TinyMce;

        $form->field($model, 'content')->widget(TinyMce::className(), [
            'options' => ['rows' => 15],
            'fileManager' => [
                'class' => \zxbodya\yii2\elfinder\TinyMceElFinder::className(),
                'connectorRoute' => 'el-finder/connector',
            ],
            'settings' => [
                'valid_elements' => '*[*]'
            ],
        ])
        ?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM