code html ckeditor strip-tags

ckeditor format html code



CKEditor elimina los atributos en lĂ­nea (5)

Enfrenté el mismo problema y la siguiente respuesta resolvió mi problema:

config.allowedContent = true; config.extraAllowedContent = ''*(*);*{*}''; config.extraAllowedContent = ''span;ul;li;table;td;style;*[id];*(*);*{*}'';

He estado usando CKEditor por algún tiempo y ha funcionado muy bien. Me he deshecho de cualquier problema que haya tenido, pero parece que no puedo resolver este. Cuando agrego atributos en línea a los elementos, por ejemplo, style = "color: #ff0;" en una etiqueta <p></p> se eliminan cuando cambio de wysiwyg a la vista de origen. No se ha guardado ni enviado nada y se ha agregado ckeditor a mi sitio, que es mi propio script. Cualquier idea sobre lo que causaría esto. Todos los resultados de búsqueda que puedo encontrar corresponden a este suceso en Drupal, pero Drupal parece ser el problema, no el editor en todos los casos. ¡Gracias de nuevo!


Hola, puedes detener ACF fácilmente. Por defecto, tu configuración es ---

function ckeditor($name,$value='''',$height=300){ return ''<textarea name="''.addslashes($name).''">''.htmlspecialchars($value).''</textarea> <script>$(function(){CKEDITOR.replace("''.addslashes($name).''",{});});</script>''; }

sólo tiene que añadir esto en los corchetes:

allowedContent: true

Ahora tu configuración será:

function ckeditor($name,$value='''',$height=300){ return ''<textarea name="''.addslashes($name).''">''.htmlspecialchars($value).''</textarea> <script>$(function(){CKEDITOR.replace("''.addslashes($name).''",{allowedContent: true});});</script>''; }


Para cualquiera que busque una muestra simple sobre cómo habilitar el marcado adicional en CKEditor sin deshabilitar completamente ACF, aquí hay un breve fragmento de código:

CKEDITOR.replace( ''editor1'', { extraAllowedContent: ''style;*[id,rel](*){*}'' } );

config.extraAllowedContent aquí habilita el elemento <style> , permite dos atributos adicionales (entre corchetes) para todos ( * es un comodín) elementos ya permitidos, permite el uso de cualquier nombre de clase (*) y permite el uso de cualquier estilo en línea {*}



Tuve el mismo problema, que ck eliminaba no solo algunos atributos, sino elementos enteros al pegar un elemento de bloque, dentro de un elemento de bloque (div con algunos atributos pegados dentro de ap) al usar este método:

editor.insertHtml(html);

lo que resolvió el problema fue usar esta solución alternativa en su lugar:

editor.insertElement(CKEDITOR.dom.element.createFromHtml(html));