22 Votos

TinyMCE: Permitir solo determinados Formatos y Tags HTML

Pregunta de Invitado | 03/04/2021 a las 20:23

¿Es posible configurar TinyMCE HTML Editor de manera que solo sea posible formatear el texto con formatos predefinidos? En otras palabras, solo se permiten etiquetas HTML específicas y definidas.

Por ejemplo, ¿es posible poner el texto en negrita o cursiva o establecer un enlace a otro sitio web, pero que no es posible insertar títulos, cuadros de colores u otras cosas?

ResponderPositivoNegativoFechaVotos
2Mejor Respuesta2 Votos

Con la declaración de "valid_elements", puede controlar exactamente qué etiquetas HTML están permitidas y cuáles no.

Aquí hay un ejemplo:

tinymce.init({
  selector: "textarea",
  valid_elements: "p,br,b,i,strong,em",
  toolbar: "bold italic"
});

Con esto, solo permitimos párrafos (p), saltos de línea (br), textos en negrita (b y strong) y textos en cursiva (i y em). Al mismo tiempo, limitamos la barra de herramientas a botones para texto en negrita y cursiva.

valid_elements: "p,br,b,i,b/strong,i/em"

Con el uso de notación como "b/strong" o "i/em", podemos hacer que TinyMCE reescriba automáticamente las etiquetas HTML. En este ejemplo, "strong" se cambia a "b" y "em" a "i".

valid_elements: "p,a[href|target=_blank],div[style]"

Detrás de formatos simples, también podemos ajustar qué atributos se pueden mantener. Esto es interesante, por ejemplo, a la hora de definir enlaces. En este ejemplo, permitimos los atributos "href" y "target=_blank" para etiquetas a y el atributo "style" para divs.

Importante: Prohibir las etiquetas HTML con TinyMCE no hace que la entrada del usuario sea más segura, ya que hay muchas formas de omitir TinyMCE y enviar todo lo que desee al servidor de todos modos. Por lo tanto, siempre debe verificar la entrada del usuario en el lado del servidor.
03/04/2021 a las 21:37

ResponderPositivo Negativo
00 Votos

Si DESACTIVAMOS las etiquetas "br", así como cualquier etiqueta que sea el padre del elemento raíz TinyMCE, ¿eso previene saltos de línea y nuevos párrafos?

Quiero un editor que contenga el título de un artículo de modo que la gente pueda agregar negrita y cursiva (como para un título dentro del título), pero el título debe estar todo en una línea de texto.
05/04/2021 a las 13:04

Positivo Negativo
00 Votos

Si. Simplemente especifique valid_elements: "strong,em" para permitir solo texto en negrita y cursiva en su título.

Sin embargo, también debe verificar el título en su servidor nuevamente, porque TinyMCE solo funciona con JavaScript y el usuario puede escribir y enviar manualmente lo que quiera en el campo de texto subyacente.
05/04/2021 a las 17:35

Positivo Negativo
Responder
Responder

Temas Relacionados

CSS: Cómo incluir CSS en HTML

Tutorial | 0 Comentarios

Aviso Importante

Por favor tenga en cuenta: Las contribuciones publicadas en askingbox.com son contribuciones de los usuarios y no deben reemplazar el asesoramiento profesional. No son verificados por independientes y no reflejan necesariamente la opinión de askingbox.com. Aprende más.

Participar

Haga su propia pregunta o escriba su propio artículo en askingbox.com. He aquí cómo.