DiscPage: un plugin para crear páginas estáticas e insertar globos de discusión en el texto

:warning: Obsoleto

Este plugin ya no se mantiene y no funciona con las versiones actuales de Discourse.
Recomendamos eliminarlo de los sitios de producción para evitar problemas de actualización.
Gracias a todos los que lo utilizaron y contribuyeron a este plugin a lo largo de los años. :folded_hands:

Con DiscPage, puedes crear páginas estáticas agregando la categoría “Página” a cualquier tema.

Luego puedes insertar iconos de globo, para permitir que los usuarios discutan subsecciones de la página.

Consulta la antigua demostración la nueva demostración y el repositorio.

41 Me gusta

Los temas de discusión aparecen de forma extraña en /latest; ¿quizás deberían ir en su propia categoría, “Comentarios de página” o algo similar?

El uso de etiquetas estructuradas es bastante genial :slight_smile:

5 Me gusta

Claro, puedes usar la configuración discpage balloon category para establecer una categoría para los debates de “balón”.

6 Me gusta

¡Increíble! ¡Definitivamente mi ONG lo va a necesitar!

6 Me gusta

¿Hay alguna manera de mostrar las categorías/subcategorías a la izquierda?

¿Hay alguna manera de mostrar las categorías/subcategorías a la izquierda?

No existe una forma automática de mostrar las categorías en las páginas estáticas de DiscPage. Sin embargo, puedes agregar enlaces a las categorías manualmente. Luego, puedes dar estilo a esos enlaces para colocarlos en una barra lateral a la izquierda (usando un componente de tema).

P.D.: Probablemente ya lo sepas, pero recuerda que puedes acceder a las categorías desde el menú hamburguesa.

2 Me gusta

¡Gracias @syl por el excelente plugin :slight_smile:

¿Podrías explicar también en qué se diferencia este plugin del siguiente?

1 me gusta

El complemento que mencionas parece genial. No lo he probado, pero diría que las diferencias son:

  • La creación de páginas es diferente: ProCourse ofrece un backend rico en funciones, mientras que DiscPage solo transforma un tema (por lo que estás limitado a la edición habitual de Markdown).
  • ProCourse no admite globos de discusión dentro de las páginas.
4 Me gusta

¡Acabo de descubrir este plugin hoy y estoy impresionado! Muchas gracias por tu trabajo, @syl.

Solo para confirmar: esta funcionalidad puede “contenerse” en una categoría y no se apodera de todo el foro, ¿verdad? La idea (potencial) que tenemos en mente para nuestro proyecto es escribir una guía colaborativa usando una categoría, mientras mantenemos el resto del foro (un Discourse normal) tal como está.

Sí, tienes razón.

Sí, suena como algo que DiscPage puede hacer.

1 me gusta

¡Gracias @syl!

Última pregunta (por ahora): :slight_smile: ¿Cómo define el plugin los permisos? ¿Quién puede crear / modificar / eliminar estas páginas estáticas?

1 me gusta

Una página estática de DiscPage no es más que un tema con una categoría predefinida específica. Llamémosla “Página”. En consecuencia:

  • Las páginas estáticas pueden ser creadas por quien tenga permiso para crear temas en la categoría Página. Debes configurar los permisos de la categoría Página según tus necesidades. El caso habitual es restringir el permiso “Crear” a los administradores, como se explica aquí, de modo que solo los administradores puedan crear páginas estáticas.

  • Las páginas estáticas pueden ser modificadas/eliminadas por el autor del tema y por usuarios del personal (como cualquier tema normal).

1 me gusta

¿Por qué tu plugin modifica el icono de hamburguesa? Lo volvió rojo y ahora tengo que averiguar cómo sobrescribir el CSS para devolverlo a la normalidad. Me gusta tu plugin, pero ¿puedes solucionarlo?

Hola @Erik_Manger, tu problema se describe aquí:

Mi menú hamburguesa se ha vuelto rojo, ¿qué debo hacer?

Menú hamburguesa
Un menú hamburguesa rojo significa que DiscPage está desactivado. Esto ocurre:

  1. cuando un error ha impedido que DiscPage se inicie (en ese caso, verifica la consola de depuración para buscar un error relacionado con DiscPage), y
  2. cuando desactivas manualmente DiscPage (ver más abajo).

@syl Estoy teniendo un verdadero problema con estos pasos. Lo siento, sé que es un problema súper de principiante. PERO, ¿podrías proporcionar una plantilla simple de copiar y pegar? ¿O un breve video de demostración? O, si me guías personalmente por esto, crearé un video de YouTube para otros que son SUPER principiantes.

  • Para editar una página estática, haz clic en el botón del “lápiz” en la parte superior derecha de la página (también puedes desactivar DiscPage desde el menú hamburguesa y luego editar el tema como lo harías normalmente).
  • Para estilizar páginas estáticas, usa la clase .dpg-page-content. Para estilizar una página individual, usa el atributo de datos html[data-dpg-page-id]. Por ejemplo, ve a Configuración > Personalizar > Tema Claro > Editar CSS/HTML y escribe lo siguiente en la sección Común > CSS:
1 me gusta

¿Puede una página estática importar un archivo JS o enlazar a uno?

1 me gusta

Una página estática se renderiza como un tema estándar de Discourse, por lo que se aplican las reglas de los scripts JS en los temas. Creo que hay varias discusiones sobre esto aquí en meta: implica crear un componente de tema y personalizarlo (también hay una configuración de Discourse para permitir la vinculación de scripts externos).

También podrías querer revisar la sección “Para personalizar una página estática” en esta página y ver este ejemplo de JS en una página estática (listas desplegables en la parte superior).

1 me gusta

¿Ya creaste una página estática? ¿Puedes ver el botón del lápiz?

Dar estilo a una página estática es similar a dar estilo a una página de tema estándar de Discourse: creas un componente de tema y lo personalizas. Hay un ejemplo aquí. También puedes buscar “Theme Components” aquí en meta. La clase .dpg-page-content permite crear reglas CSS que se aplican solo a las páginas estáticas en lugar de a todas las páginas de temas.

Sobre ese tema, digamos que tengo una API que recupera una imagen según la entrada del usuario. En el enlace que enviaste, hay algunas listas desplegables en la parte superior. Si el usuario selecciona algo de una lista desplegable, el JavaScript mostrará algo basado en esa entrada. ¿Es eso posible dentro de una página estática?

1 me gusta

Creo que tu herramienta funciona al 100% correctamente. El problema es mi falta de conocimientos sobre cómo usarla :frowning: Voy a revisar ese enlace que proporcionaste con .dpg-page-content

Página: https://community.tigergraph.com/t/this-is-a-test-page/606

Haz clic en el botón Editar. Inserta un trozo de código. Haz clic en Configuración. Ve a Personalizar. Inserta el trozo de código y deberías ver aparecer una página web básica en HTML. ¡Esto ayudaría a alguien tan novato como yo, jaja!

Agradezco mucho que hayas tomado el tiempo de responder a mi pregunta :slight_smile:

Te mantendré al tanto de mi progreso. ¡Espero poder hacer que la mía se parezca en algo a la tuya!

1 me gusta