امروز بنا به درخواست یکی از دوستان، تصمیم گرفتم مجموعه AssetBundle و Widget مربوط به استفاده از ادیتور محبوب TinyMCE رو برای استفاده دوستان آماده کنم.
روش کار هم خیلی ساده است:
ابتدا باید فایل فشرده رو در مسیر app/assets از حالت فشرده خارج کنید تا پوشه tinymce داخلش ساخته بشه.
حالا توی هر صفحهای که میخواین از TinyMCE استفاده کنید کافیه ویجتش رو به این شکل تعریف کنید:
و بعد عنصر موردنظر رو اینطوری تعریف کنید توی فرم:
درصورت نیاز به سفارشیسازی ادیتور، میتونید کمی جزئیات بیشتر براش مشخص کنید:
درصورت نیاز میتونید طبق مستندات سایت TinyMCE قابلیتهای دیگه رو هم به ویجت اضافه کنید.
روش کار هم خیلی ساده است:
ابتدا باید فایل فشرده رو در مسیر app/assets از حالت فشرده خارج کنید تا پوشه tinymce داخلش ساخته بشه.
حالا توی هر صفحهای که میخواین از TinyMCE استفاده کنید کافیه ویجتش رو به این شکل تعریف کنید:
use appassetstinymceTinyWidget; <?= TinyWidget::widget(['selector' => '.tmce']) ?>
و بعد عنصر موردنظر رو اینطوری تعریف کنید توی فرم:
<?= $form->field($model, 'comment')->textArea(['class' => 'tmce']) ?>
درصورت نیاز به سفارشیسازی ادیتور، میتونید کمی جزئیات بیشتر براش مشخص کنید:
use appassetstinymceTinyWidget; <?= TinyWidget::widget([ 'height' => 200, 'language' => 'fa_IR', 'plugins' => [ 'advlist', 'autolink', 'lists', 'link', 'image', 'charmap', 'print', 'hr', 'preview', 'anchor', 'pagebreak', 'searchreplace', 'wordcount', 'imagetools', 'visualblocks', 'visualchars', 'code', 'fullscreen', 'insertdatetime', 'media', 'nonbreaking', 'save', 'table', 'contextmenu', 'directionality', 'emoticons', 'template', 'paste', 'textcolor', 'colorpicker', 'textpattern', ], 'selector' => '.tmce', 'toolbar' => [ 'insertfile undo redo', 'styleselect', 'bold italic underline', 'alignleft aligncenter alignright alignjustify', 'bullist numlist outdent indent', 'link image', 'print preview media', 'forecolor backcolor emoticons', ], ]) ?>
درصورت نیاز میتونید طبق مستندات سایت TinyMCE قابلیتهای دیگه رو هم به ویجت اضافه کنید.
نقل قول:نکته: ویجت طوری تنظیم شده که اگه هرکدوم از پارامترهاش رو تعیین نکنید، از مقادیر پیشفرض متد init استفاده کنه.