CKEditor Media Embed con múltiples instancias

En un proyecto en el que estoy involucrado he usado uno de los mejores editor HTML que existe, CKEditor. Este editor WYSIWYG es muy completo a falta de un gestor de imágenes.

Para incrustar videos de YouTube, Vimeo, etc.., existe un plugin llamado MediaEmbeb el cual realiza su cometido perfectamente.

Al usarlo en mi proyecto me he dado cuenta que si en una misma página tenemos más de un editor de HTML, al ir a incrustar un video en uno de los primeros editores, lo inserta realmente en el último de ellos.

He estado revisando el código y la solución es muy sencilla.

  1. Buscaremos la carpeta del plugin en «../ckeditor/plugins/mediaembed/»
  2. En dicha carpeta localizaremos y abriremos el fichero «plugin.js»
  3. Localizaremos la línea:
    CKEDITOR.dialog.add( 'MediaEmbedDialog', function ()
  4. Y la sustituiremos por:
    CKEDITOR.dialog.add( 'MediaEmbedDialog', function (editor)

Con este simple cambio todo funcionará correctamente.In a project I’m involved I’ve used one of the best HTML editor there, CKEditor. The WYSIWYG editor is very complete lack of an image manager.