Esta guía cubre cómo usar la función de Publicación de Páginas (Page Publishing) en Discourse. Esta función permite a los usuarios del Staff convertir un tema en una página estática independiente con un estilo personalizado. Ejemplos incluyen las páginas de Términos de Servicio y Política de Privacidad.
Nivel de usuario requerido: Staff
Publicación de páginas estáticas en Discourse
La Publicación de Páginas permite a los usuarios del Staff crear páginas estáticas independientes a partir de temas. Esto es similar al proceso para crear páginas de Términos de Servicio o Política de Privacidad.
Resumen
Esta documentación cubrirá:
- Habilitar la Publicación de Páginas
- Publicar un tema como página
- Despublicar un tema
- Problemas comunes y soluciones
- Preguntas frecuentes (FAQs)
- Recursos adicionales
Habilitar la Publicación de Páginas
- Navega a
Admin>Settings(Ajustes).- Activa la configuración
enable page publishing(habilitar publicación de páginas).
Habilitar la publicación de páginas cuando se requiere iniciar sesión
Para permitir que las páginas publicadas sean visibles incluso cuando un usuario no ha iniciado sesión:
- Activa la configuración
show_published_pages_login_requiredenAdmin>Settings(Ajustes).
Publicar un Tema
Ve a la primera publicación de un tema público y selecciona el icono de elipsis (
...).
Selecciona el icono de llave inglesa.
Elige la opción “Page Publishing” (Publicación de Páginas).
Aparecerá un cuadro de diálogo modal, que te permitirá confirmar el slug (que se puede rellenar previamente con el título de la publicación) y previsualizar la URL de la página publicada.
Para permitir la publicación de páginas, es necesario desactivar la configuración del sitio secure upload.
Para sitios alojados, las cargas seguras están limitadas al plan Enterprise.
Tema Publicado
Si la opción
Public(Público) está marcada, aparecerá una etiqueta public.
Un tema publicado mostrará un aviso debajo del título que permite acceder a su configuración de publicación.
Página Publicada
Despublicar un Tema
Selecciona
Publishing Settings(Configuración de Publicación) debajo del aviso.
Haz clic en Unpublish (Despublicar)
El tema se despublica.
Problemas comunes y soluciones
No se pueden ver las páginas publicadas al cerrar sesión
Asegúrate de que la configuración
show_published_pages_login_requiredesté activada enAdmin>Settings(Ajustes).Añadir una cabecera de Discourse a las páginas publicadas
Actualmente, las páginas estáticas están pensadas para ser mínimas y no incluyen la cabecera y el pie de página típicos de Discourse.
Preguntas frecuentes (FAQs)
¿Puedo hacer pública una página de Preguntas Frecuentes o Acerca de?
Puedes crear un tema nuevo con el contenido deseado y publicarlo como una página. Cambia los enlaces en la configuración del sitio para que apunten a estas nuevas páginas.
¿Cómo puedo personalizar la apariencia de una página publicada?
Utiliza la estructura del documento HTML y los selectores CSS correspondientes para aplicar estilos personalizados en
Admin>Customize(Personalizar) >Themes(Temas) >CSS.Recursos adicionales
I still need to try this out first hand so the following may not be grounded in reality, but:
It strikes me that this permission model sets up a scenario where you always see two copies of the pages’ content – one in the relevant Discourse category, and one in the published pages themselves. This of course seems duplicative if you’re wanting to publish pages for the general population that is similar to, or identical to, your Discourse user base.
OTOH, if pages had the “world readable” flag available, you could then restrict who can see/edit them to a small group, and the only place the content would be available to other Discourse users would be in the published links themselves.
(I’m thinking of a use case of a “documentation site” here.)
Otherwise, I’m pretty excited to test things out!
¡Cosas geniales, y gracias de nuevo por escuchar a tus usuarios! Me encanta la vibra de ‘hagamos esto mejor para todos’ que tiene Discourse. Le daremos mucho uso a esto.
Al discutir un caso de uso (arreglar una instalación que salió un poco mal), otro usuario señaló un pequeño detalle final que podría ir bien en el pastel:
Oye, ¿hay alguna manera de incluir la opción de hacer que /faq y /about sean públicos también, ya que actualmente están ocultos en los sitios que requieren inicio de sesión? Por supuesto, podemos usar la funcionalidad existente que acabas de lanzar para /faq creando la nuestra propia, cambiando el enlace en la configuración y enlazándolo explícitamente. Sin embargo, esto no es muy elegante y la navegación existente hacia él sigue oculta. Por supuesto, no podemos hacer eso en absoluto con /about.
Algo que quedaría bien con esta función sería hacer que las publicaciones sean compatibles con OneBox, de modo que las personas puedan compartir el contenido fácilmente.
Por favor, disculpen mi ignorancia, ya que soy muy principiante en el ámbito de HTML/CSS… sin embargo, ¿cómo podríamos aplicar nuestras opciones de color del tema a las páginas publicadas? En su forma más sencilla, me gustaría usar un fondo oscuro con texto blanco para que las páginas publicadas tengan la misma experiencia de modo oscuro que al acceder a nuestros foros.
¿Esto ya está incluido en el producto o necesito modificar el HTML/CSS? Si es lo segundo, ¿podría alguien darme algunas indicaciones en la dirección correcta? ¡Gracias!
¿Podrías convertir esto en una solicitud de función independiente, por favor? Esto no está relacionado con la publicación de páginas, en el sentido de que no tendría que cambiar nada relacionado con la publicación de páginas para hacerlo posible. Estoy de acuerdo en que sería mejor si todas estas páginas “estáticas” pudieran tener un comportamiento más o menos similar, pero hay múltiples soluciones aquí (¿no hacer nada? ¿agregar configuraciones del sitio? ¿migrarlas a la publicación de páginas?), por lo que quizás queramos tener un tema dedicado para esto.
¿GTM no se carga en las páginas publicadas? Sería genial.
Hmm, ese es un punto realmente bueno.
Solo tratando de pensar en una solución aquí… ¿funcionaría si type="text/javascript" y type="text/discourse-plugin" se trataran de manera diferente? La API necesita esta última, ¿verdad?
Sí, creo que ya admitimos tener un text/javascript en los campos del tema, por lo que sin duda existen soluciones en este ámbito.
Eso sería genial.
Por lo tanto, actualmente es imposible tener páginas publicadas responsivas, y este sitio en particular desea:
- que las imágenes estén disponibles al compartir en medios públicos, y
- que se muestren imágenes responsivas/redimensionables, especialmente en móviles. Oh, los móviles podrían simplemente redimensionar la imagen con CSS; eso debería funcionar, ¿verdad?
+1 por tener el encabezado de Discourse en las páginas publicadas. Me falta el logotipo de mi sitio web, los enlaces personalizados del encabezado y mi querido menú hamburguesa ![]()
Otra rareza: en los mensajes, las imágenes con lightbox se abren en un elegante popup, mientras que en las páginas publicadas se abren en una nueva pestaña…
Creo que lo que se necesita es un conjunto de componentes de tema que añadan esto. El último cliente que tuve que usar esto quería que se eliminara el creador de temas. ¡Creo que es difícil adivinar qué satisfará las necesidades de la gente en esto!
¿Hay actualmente algún esfuerzo en curso para agregar soporte de JavaScript “simple” (no API) a las páginas publicadas? ¿O deberíamos olvidarnos de esto a corto o medio plazo?
¿Puedo mostrar JSON externo no perteneciente a Discourse en esta página? Como no podemos usar código PHP aquí y Discourse elimina la mayor parte del HTML, no sé cómo hacerlo.
Tengo un problema con una página publicada: el botón para copiar el contenido del bloque de código no es visible en la página publicada. Captura de pantalla: Screenshot by Lightshot. Muevo el mouse sobre el bloque, pero el botón no aparece. Cuando estoy conectado, todo funciona como de costumbre: correcto.
¿Alguien puede reproducir el problema? ¿Alguna solución?
¡Gracias @riking!
Parece que, efectivamente, el text/javascript “regular” se está ejecutando en las páginas publicadas cuando está en el header o footer de un componente del tema.
¡Ja! Parece que hay una forma chapucera de hacer que algunos componentes del tema funcionen con la publicación de páginas.
Estoy investigando cómo añadir algún encabezado o pie de página a las páginas publicadas, y los componentes del tema parecen ser la opción adecuada. Pero me parece mala idea implementar algo que potencialmente podría romperse en un futuro cercano.
@riking, parece que el tipo text/javascript en header o footer que funciona en las páginas publicadas fue algo no intencionado. ¿Se va a corregir o se va a utilizar para extender las páginas publicadas?
@syl, autor de DiscPage, mencionó la posibilidad de reimplementar el plugin DiscPage utilizando la funcionalidad de Publicación de Páginas. ¿Aún tienes esto en mente, @syl? ¿Qué opinas que sería el camino de menor resistencia para integrar ambas funcionalidades, @riking?
Desafortunadamente, la función “Publicación de páginas” no cumple con mis necesidades. Para que yo pueda usarla, necesitaría que las páginas publicadas:
- se muestren dentro de la estructura normal de Discourse, es decir, con el encabezado estándar de Discourse (al igual que los Términos de servicio y la Política de privacidad), y
- se rendericen como temas normales (con formato), es decir, que admitan bbcode y plugins.
Mientras tanto, utilicé la herramienta de personalización predeterminada de Discourse:
- Identifica el elemento agregado, por ejemplo, con la clase CSS
published-page-footer-links. - Personaliza el CSS para ocultar este elemento de forma predeterminada y mostrarlo solo en páginas publicadas.
- Agrega el elemento en el espacio
Footer.
2. En CSS, agrega:
/* Mostrar solo los enlaces del pie de página en páginas publicadas */
.published-page-footer-links { display: none; }
.published-page .published-page-footer-links { display: block;}
3. En Footer, agrega:
<nav class="published-page-footer-links">
¡Hola! Este es el pie de página para las páginas publicadas.
</nav>











