Texto importado coloreado

Hola,

Llevamos un mes ejecutando un nuevo foro basado en Discourse alojado. Estamos muy impresionados. Ya tenemos 2000 usuarios.

Estamos tratando de traer el texto con colores desde nuestro antiguo foro phpBB, pero no logramos que funcione en el nuevo foro: [color=#BFBFBF]gris - “Listo para actualizar”[/color], [color=#FF8000]naranja - número antiguo[/color] o [color=#00BF00]verde - número actual[/color].

Agradecemos cualquier sugerencia.

¿Has considerado usar el complemento BBCode?

¿Se puede usar esto para un foro alojado?

Cuando importamos casi un millón de publicaciones desde vB a Discourse, eliminamos todo el código BB de color durante el proceso de migración.

Nuestro problema fue que el plugin de BBCODE no funciona como se esperaba cuando el BBCODE está anidado (BBCODE dentro de BBCODE), por lo que, tras un análisis exhaustivo, decidimos eliminar todas las etiquetas de color BBCODE (de forma recursiva) durante el proceso de migración.

¡Importar BBCODE anidado es realmente complicado, por supuesto! Es “factible”, pero decidimos que no valía la pena el esfuerzo (y añadía poco valor, ya que las fuentes de colores con nombres, en lugar de clases, dificultan la personalización del tema).

Esperamos que esto ayude.

¿Está mi código anidado (BBCode dentro de BBCode)?
¿Existe alguna alternativa para obtener texto de color?

No, necesitas usar BBCode. Puedes anidar, pero solo si tiene sentido (no muy diferente a HTML). Puede haber algunos códigos no implementados.

Mi plugin Discourse Frotz utiliza la anidación con éxito para combinar fuente, color y color de fondo. Observa la letra ‘N’ roja en la brújula de la captura de pantalla.

Deberías consultar a tu proveedor de alojamiento si pueden instalar ese plugin oficial.

Hola @ianm

La muestra de código que proporcionaste no está anidada.

Nuestra experiencia con el plugin oficial de BBCode fue que no “funciona bien” con BBCode anidado. Sin embargo, si no tienes BBCode anidado, es “más que probable” que esto no sea un problema para tu migración.

Nuestra migración de sitio tenía décadas de BBCode anidado (cientos de miles) y fue un gran problema (incluso con el plugin oficial de BBCode, que usamos hoy en día), así que simplemente eliminamos todo el color (y algunas otras etiquetas de código que no necesitábamos). Ni un solo usuario se ha quejado de que falte el color del texto de una publicación de hace 5 años, y tampoco lo harán.

Lograr que el BBCode migrado funcione correctamente NO es tan simple como “usar el plugin oficial de BBCode”. Si una gran migración de años de diversas combinaciones de BBCode anidado fuera tan simple, nuestro tiempo total de migración habría sido de semanas en lugar de meses. Es algo que hay que experimentar de primera mano y no es “una teoría”, simplemente es así. El plugin oficial de BBCode es bueno y lo usamos, pero solo después de eliminar gran parte del BBCode anidado.

También tomamos la decisión de eliminar completamente todas las etiquetas de color BBCode porque, cuando un color está codificado en el texto, puede verse bien con un tema (por ejemplo, un tema claro), pero el mismo color no se verá bien y a menudo será una distracción en otro tema (por ejemplo, un tema oscuro), por lo que decidimos eliminar todas las etiquetas de color BBCode y estamos muy contentos de haberlo hecho.

Por supuesto, cada sitio debe tomar sus propias decisiones de compensación durante la migración. Puedo decir que tuvimos algunos “muy inteligentes programadores de REGEX” trabajando durante meses para que nuestra migración fuera “perfecta” y la mayor parte del tiempo se dedicó al BBCode. Los plugins y gemas oficiales para esto fueron una buena “primera aproximación”, pero dejaron mucho que desear en la migración final, así que escribimos muchas expresiones regulares Ruby gsub() para limpiarlo.

Mucha suerte y espero que esta visión práctica “desde el campo de batalla de la migración” haya sido útil. No hay duda de que migrar de un foro heredado a otro puede ser muy “tricky” si tu objetivo es una migración “con gran apariencia” en lugar de una migración “descuidada”.

Tu código funciona perfectamente en el plugin de BBCode tal como está:

image

Aquí, he añadido un nivel de anidación:

image

¿Y qué tal con dos?:

image

¿Y con tres, y un conjunto un poco más complejo?:

image

Gracias por confirmar que funciona en ese complemento. Veré si se puede añadir a nuestro foro alojado :thinking:

Lo sentimos, pero el complemento BBCode no está disponible ni en nuestros planes Estándar ni en los planes de Negocios. Los complementos disponibles en cada uno de esos planes se enumeran aquí: Plugin directory | Discourse - Civilized Discussion.

El complemento BBCode y cualquier otro complemento oficial de Discourse se pueden instalar en nuestro plan Empresarial.