CKEditor Embedded Content

Embedding content from your site within a formatted text field with CKEditor.

Image

Inline images can be used in your content.

Images can be uploaded to the file system via CKEditor.

Drag and drop images are supported by default.

Decide if you want to allow using bare images in WYSIWYG, or use media everywhere. It's not easy to change.

The standard profile configures Basic HTML with Images, but many developers replace that with Media.

Media

Embedded media is well supported in Drupal.

It's the best way to embed images, video, even document thumbnails and other kinds of Media content.

CKEditor Media documentation.

There are different CKEditor features between Image and Media, and drag and drop doesn't work.

Issue: Allow CKEditor styles for <drupal-media>

Entity Embed

Embed any entity in CKEditor with Entity Embed.

Entity Embed Drupal 11 support

Embed Drupal 11 support

oEmbed

Drupal media supports oEmbed.

media.oembed.provider_repository service pulls data from https://oembed.com/providers.json

To create a media type, a media source needs to be defined, see details in the change record.

Use oEmbed Providers to enable additional media type sources.

URL Embed can embed oEmbed content.

Proposal for a Media Widget field that can support inline and remote resources.

HTML

With source editing allowed, and html tags unrestricted, you can paste in embed codes containing scripts or iframes.

CKEditor5 HTML Embed provides a nice UI to separate embed code from your content.

However, if content entry needs to be secured, those have to be limited.