آموزش Asp.Net MVC کار با CKEditor 5

در این پست قصد داریم نحوه کار با CKEditor 5 را به‌صورت ویدیویی آموزش دهیم. ابتدا CKEditor را معرفی می‌کنیم و سپس مراحل نصب، سفارشی‌سازی و فراخوانی آن را در پروژه ASP.NET MVC بررسی خواهیم کرد. سرفصل‌های این آموزش شامل موارد زیر است:

  • بخش ۱ ـ CKEditor چیست؟
  • بخش ۲ ـ آماده‌سازی پروژه ASP.NET MVC برای CKEditor
  • بخش ۳ ـ نحوه دانلود و سفارشی‌سازی CKEditor 5
  • بخش ۴ ـ پلاگین‌های پیشنهادی CKEditor 5
  • بخش ۵ ـ نحوه فراخوانی CKEditor 5
  • بخش ۶ ـ نمایش اطلاعات بدون نمایش تگ‌های HTML

CKEditor چیست؟

CKEditor به کاربران اجازه می‌دهد انواع مختلفی از محتوا مانند اسناد، گزارش‌ها، ایمیل‌ها، یادداشت‌ها و پیام‌های چت را در برنامه ایجاد و ویرایش کنند. در واقع، CKEditor یک ویرایشگر آنلاین WYSIWYG مبتنی بر جاوا اسکریپت است که برای ویرایش محتوای HTML در مرورگر کاربرد دارد.

علاوه بر این، CKEditor یک ویرایشگر متن قدرتمند و مدرن با معماری MVC است. در این آموزش از CKEditor 5 استفاده می‌کنیم. CKEditor 5 نسبت به نسخه قبلی خود رویکردی متفاوت و مدرن دارد؛ زیرا توسعه‌دهندگان آن را از ابتدا با ES6 نوشته‌اند.

آماده‌سازی پروژه ASP.NET MVC برای CKEditor

پروژه‌های ASP.NET MVC به آماده‌سازی خاصی نیاز ندارند. بااین‌حال، باید Data Annotationهای زیر را به فیلدهایی که قرار است از CKEditor استفاده کنند، اضافه کنید:

[DataType(DataType.MultilineText)]
[AllowHtml]

Data Annotation اول، ورودی موردنظر را به یک TextArea تبدیل می‌کند.

همچنین Data Annotation دوم به برنامه اجازه می‌دهد اطلاعات دارای تگ‌های HTML را دریافت و در پایگاه داده ذخیره کند.

نحوه دانلود و سفارشی‌سازی CKEditor 5

بهتر است CKEditor 5 را بر اساس نیازهای پروژه خود سفارشی‌سازی کنید. به این ترتیب، می‌توانید قابلیت‌ها و ماژول‌های موردنیاز را به آن اضافه کنید و موارد اضافی را کنار بگذارید. خوشبختانه، وب‌سایت CKEditor امکان انتخاب و سفارشی‌سازی قابلیت‌های ویرایشگر را در اختیار شما قرار می‌دهد.

  • برای ورود به وب‌سایت CKEditor از لینک زیر استفاده کنید:
https://ckeditor.com/
https://ckeditor.com/ckeditor-5/download/

پلاگین‌های پیشنهادی CKEditor 5

در هنگام سفارشی‌سازی CKEditor 5 می‌توانید پلاگین‌های موردنیاز پروژه را انتخاب کنید. برای مثال، پلاگین‌های زیر قابلیت‌های کاربردی و مهمی را در اختیار شما قرار می‌دهند.

  • پلاگین‌های HTML
General HTML Support
HTML comment
HTML embed
  • پلاگین‌های Image
Image
Auto image
Image resize
Image insert
Link image
  • پلاگین‌های Font
Font background color
Font color
Font size
  • پلاگین Source
Source editing
  • پلاگین‌های Code
Code
Code blocks
  • پلاگین Alignment
Alignment

نحوه فراخوانی CKEditor 5

پس از دانلود CKEditor 5، برای اضافه کردن آن به پروژه مراحل زیر را انجام دهید:

  • گام اول: فایل دانلودشده را از حالت فشرده خارج کنید و پوشه آن را در روت پروژه قرار دهید.
  • گام دوم: سپس فایل ckeditor.js را از پوشه build به View موردنظر اضافه کنید.
<script src="~/ckeditor5/build/ckeditor.js"></script>
  • گام سوم: اکنون یک textarea با کلاس editor به View خود اضافه کنید.
<textarea class="editor"></textarea>
  • گام چهارم: در ادامه، برای فراخوانی CKEditor 5 از کد زیر استفاده کنید.
ClassicEditor
    .create(document.querySelector('.editor'), {
        // Editor configuration.
    })
    .then(editor => {
        window.editor = editor;
    })
    .catch(handleSampleError);

function handleSampleError(error) {
    const issueUrl = 'https://github.com/ckeditor/ckeditor5/issues';
    const message = [
        'Oops, something went wrong!',
        `Please, report the following error on ${issueUrl} with the build id "npwdoukyfz5-3bd6as171pns" and the error stack trace:`
    ].join('\n');

    console.error(message);
    console.error(error);
}
  • گام پنجم: در نهایت، برای استفاده از قابلیت‌های مربوط به تگ‌های HTML، کد زیر را در بخش Editor configuration قرار دهید.
htmlSupport: {
    allow: [
        {
            name: /.*/,
            attributes: true,
            classes: true,
            styles: true
        }
    ]
}

نمایش اطلاعات بدون نمایش تگ‌های HTML

ممکن است نخواهید تگ‌های HTML به‌صورت متن ساده در صفحه نمایش داده شوند و در عوض بخواهید مرورگر آن‌ها را روی محتوا اعمال کند. در این شرایط، می‌توانید به‌جای هلپر Html.DisplayFor از هلپر Html.Raw استفاده کنید.

// نمایش متن به همراه تگ‌های HTML
@Html.DisplayFor(modelItem => item.PostContent)

// تفسیر تگ‌های HTML و اعمال آن‌ها روی متن
@Html.Raw(item.PostContent)

توجه داشته باشید که Html.Raw محتوای HTML را بدون Encode کردن نمایش می‌دهد. بنابراین، فقط محتوای قابل‌اعتماد یا محتوایی را که قبلاً پاک‌سازی کرده‌اید، با این روش نمایش دهید؛ زیرا در غیر این صورت ممکن است سایت با حملات XSS روبه‌رو شود.

دانلود CKEditor

خرید از تهران آی تی به صورت آنلاین میباشد و لینک دانلود به صورت خودکار برای شما ایمیل میشود. همه گزینه‌ها همان فایل کامل را به شما می‌دهند. تفاوت فقط در نحوه جبران هزینه است؛ انتخاب با وجدان شماست. چنانچه نیاز به هرگونه سوال و یا کمک در خرید آنلاین داشتید با شماره 09121486770 تماس بگیرید. شماره کارت ما 6362141104352035 به نام محمدرضا احدیان میباشد.

دانلود CKEditor

کلمات کلیدی - تگ‌ها

از کلمات کلیدی و تگ‌های مربوط به آموزش Asp.Net MVC کار با CKEditor 5 دیدن فرمایید.

تصویر کلمات کلیدی مرتبط با آموزش Asp.Net MVC کار با CKEditor 5

مشاهده در آپارات یا یوتیوب

محتوای ویدیویی این صفحه در سایت قابل مشاهده است. اما اگر عادت دارید توی پلتفرم آپارات یا یوتیوب ویدیوها را مشاهده کنید، می‌توانید از دکمه‌های زیر استفاده کنید.

تماشای ویدیوی آموزش Asp.Net MVC کار با CKEditor 5 در آپارات و یوتیوب

اشتراک‌گذاری با یک کلیک

با یک کلیک، محتوای این صفحه را در شبکه‌های اجتماعی، ایمیل یا پیام‌رسان‌های مورد علاقه‌تان به‌سرعت به اشتراک بگذارید.

اشتراک‌گذاری صفحه آموزش Asp.Net MVC کار با CKEditor 5 در شبکه‌های اجتماعی

نظرات ارزشمند شما

نظرات شما برای ما ارزشمند است و آنها را میخوانیم و پاسخ میدهیم.

تصویر ممد

سلام مهندس وقت بخیر خسته نباشید دستت طلا واسه این دوره خوبی که داری، ببخشید مهندس من وقتی میخوام دیتا رو به سمت سرور ارسال کنم اون مقدار داخل ckeditor به سمت سرور ارسال نمیشه پیغام میزنه که خالیه و زمانی که inspect میگیرم و قسمت element رو نگاه میکنم پایین textarea که ساختم طبق فیلم میاد یه تگ div خودش میسازه و مقدار ها رو میزاره داخل اون و اینه که پیغام خالی میزنه راهنمایی میکنید بی زحمت

تصویر محمدرضا احدیان

سلام دوست عزیز لطف دارید شما، لطفا کد های خود را داخل گیت بارگزاری کنید تا برسی کنم ممنون.

تصویر ممد

سلام وقت بخیر مهندس منم همینطوره وقتی inspect میگیرم داخل کد های html خودش یه تگ باز میکنه و دیتا رو قرار میده و بعدش خطا میزنه یعنی داخل تگ textarea نمیزاره

فرم افزودن دیدگاه

با ارسال نظرات خود ما را در ایجاد محتوای بهتر کمک کنید.

با خدمات تهران آی تی آشنا شوید

تهران آی تی با افتخار خدمات زیر را ارائه می‌دهد.