¿Cómo lidiar con los editores WYSIWYG? [cerrado]

7

Ahora hay muchos editores WYSIWYG, sin embargo, siempre que usamos uno en un sitio web basado en CMS, siempre tenemos problemas.

Los usuarios más importantes son los que pegan contenido de Word u otras fuentes en línea y todas las diversas reglas de formato que se agregan "detrás de la escena".

¿Cómo trata a estos editores en un sitio web de producción en vivo?

Me encanta Markdown, sin embargo, su mercado objetivo es definitivamente la industria tecnológica.

    
pregunta LiamB 02.01.2011 - 12:35

6 respuestas

9

Pesimista, no creo que exista o haya una solución que reemplace la escritura manual del código HTML sin crear un desastre. Mire WYSIWYG productos de software : durante años, su anuncio nos dice que, finalmente, la nueva aplicación crea un código muy limpio; en realidad, fue una mierda hace años, todavía es una mierda.

Para los editores en línea de WYSIWYG (como en CMS), es casi lo mismo, excepto que en esos casos, creo que ni siquiera les importa el código limpio.

Parece que los editores WYSIWYG son buenos para algunos tipos de cosas y no para otros; incluso si hay una demanda de los usuarios, nunca lo serán. Son buenos para proporcionar una interfaz muy intuitiva para las personas a las que no les importa el HTML, y ni siquiera saben qué es. Hace que sea más difícil adoptarlos en sitios web que requieren optimización, etc.

Los editores WYSIWYG con más funciones tendrán más dificultades para producir contenido limpio. Es casi lo mismo para los programadores principiantes: crearán fácilmente una página HTML válida de W3C que contenga solo títulos, negrita y cursiva, pero probablemente no logre hacer algo limpio y válido al intentar implementar más funciones e interactividad.

Significa que un editor WYSIWYG con solo unas pocas opciones será la mejor opción si te importa el código limpio y los problemas de copiar y pegar. Por ejemplo, eliminar la capacidad de cambiar la fuente y establecer libremente el tamaño de la fuente (excepto a través de los títulos) puede eliminar los problemas con diferentes fuentes copiadas y pegadas de Word (si la intención es tener una fuente uniforme en cada mensaje).

El editor de este sitio web es un buen ejemplo, excepto que tiene el mismo problema para las personas que no son de TI que PHPBB: cuando hace clic en un botón, en lugar de ver en vivo lo que sucede, usted ve algunas cosas de reducción de rendimiento agregadas a su mensaje de texto plano.

    
respondido por el Arseni Mourzenko 02.01.2011 - 12:52
5

Limitar funcionalidades , como la que estoy usando ahora para escribir esta respuesta.

Los WYSIWYG recientes proporcionan esa capacidad, incluida la eliminación automática de formato en pegado.

    
respondido por el user2567 02.01.2011 - 12:41
4

Utilizo la eliminación de formato cada vez que incorporo una interfaz WYSIWYG en un sitio web. Dado que el sitio tendrá un estilo propio, tiendo a querer restringir lo que un usuario puede agregar, prefiriendo tener los detalles del Estilo derivado del CSS. Tengo un poco de código que más o menos quita los atributos de las etiquetas (con algunas excepciones) elimina las etiquetas que se repiten más de dos veces y algunas etiquetas que solo causarán problemas, ¿alguien? - Y termino usando eso con frecuencia. Funciona bien porque les da a los usuarios la impresión de poder sin darles suficiente cuerda para que se cuelguen.

    
respondido por el glenatron 02.01.2011 - 20:03
3

Restricto el editor a las opciones más simples (como las que se usan para publicar en stackexchange), y ejecuto el resultado a través de HTMLPurifier (php) en el servidor.
Como la salida real puede ser diferente a la que creó el usuario, debe mostrarle el resultado de alguna manera. Es posible que incluso desee almacenar dos versiones, limpias e impuras.

HTMLPurifier garantiza un html válido, pero el resultado podría no ser lo que el usuario deseaba, o marcado completamente limpio (como en mínimo o ideal).

    
respondido por el Gipsy King 07.03.2011 - 14:48
2

Utilizamos un editor web WYSIWYG en nuestro sistema de cotización de intranet.

En lugar de limitar la funcionalidad, como mencionan otros, Limité a los usuarios y les advertí sobre su uso. Además, la salida de esas entradas HTML está restringida a PDF , así que agregué un botón de vista previa para que vean si WYSIWYrG (lo que ves es lo que realmente obtiene).

No son programadores, ni siquiera son expertos en tecnología, pero aprendieron a jugar con la bestia sin ser lastimados. Hay un botón en la barra de herramientas "Limpiar palabras" en el editor, pero a menudo obtuvieron mejores resultados al cortar y pegar en el bloc de notas antes de pegar en el editor y luego reformatearlo correctamente.

Es una gran herramienta para hacer cosas simples. Y, se están dando cuenta. Hay una pestaña HTML en este editor, algunos de ellos comenzaron a jugar con ella para solucionar algunos problemas. La necesidad es un gran motivador.

HTML incorrecto, sí, pero si produce un buen resultado final, ¿a quién le importa?

    
respondido por el DavRob60 07.03.2011 - 15:36
2

Necesitaba un front-end basado en formularios para que los usuarios puedan crear y actualizar contenido XML. Hice esto dividiendo las secciones principales de XML en entradas separadas o áreas de texto WYSIWYG. La mayoría de los editores en el navegador parecen confiar en el mismo conjunto de funciones editable del contenido básico, así que solo uso la más liviana que he encontrado hasta ahora: Whizzywing . Utilizo los strip_tags () de PHP en los campos de entrada y paso el contenido de texto enriquecido a través de la herramienta tidy de PHP con la opción output-xml en vigor (entre otros, para eliminar los atributos de estilos espurios y normalizar las frases semánticas). También he usado la biblioteca htmLawed con igual éxito. Tidy tiene una opción de limpieza de word-2000 que también puede ser útil.

Con XML bien formado como resultado de este paso, luego uso una transformación XSLT para finalizar la limpieza. Esta es la etapa en la que puede aplicar reglas de negocios a su proceso ... la falla de ambos editores y los diversos purificadores es que asumen la reutilización directa del contenido HTML, mientras que si necesita aplicar cualquier tipo de control de calidad o regla de negocios control de cumplimiento del contenido, estas verificaciones se realizan mejor escribiendo las plantillas XSL adecuadas que pueden reordenar o volver a etiquetar el contenido para que se ajuste a las reglas. Este es efectivamente el beneficio que obtiene al utilizar las transformaciones de Markdown a HTML, pero este proceso brinda a los usuarios el front-end WYSIWYG más atractivo más el pegado de palabras como beneficio.

Estos pasos ayudan en gran medida a limpiar la mayoría de las cosas que se pueden pegar desde Word a HTML, a la vez que mantienen un orden dirigido para el resultado que finalmente se guarda. Es muy similar al proceso utilizado por el sitio web iFixit para la creación de contenido de texto enriquecido. Producen un formato XML oManual al final del paso de guardar; Estoy produciendo una forma simple de DITA, FWIW.

    
respondido por el Don Day 25.02.2013 - 19:35

Lea otras preguntas en las etiquetas