Questa guida illustra come utilizzare la funzione di pubblicazione delle pagine su Discourse. Questa funzione consente agli utenti Staff di convertire un argomento in una pagina statica autonoma con stile personalizzato. Esempi includono le pagine Termini di servizio e Informativa sulla privacy.
Livello utente richiesto: Staff
Pubblicazione di pagine statiche su Discourse
La pubblicazione di pagine consente agli utenti Staff di creare pagine statiche autonome a partire da argomenti. Questo è simile al processo per la creazione di pagine Termini di servizio o Informativa sulla privacy.
Sommario
Questa documentazione coprirĂ :
- Abilitare la pubblicazione delle pagine
- Pubblicare un argomento come pagina
- Depubblicare un argomento
- Problemi comuni e soluzioni
- FAQ
- Risorse aggiuntive
Abilitare la pubblicazione delle pagine
- Navigare su
Admin>Settings.- Attivare lâimpostazione
enable page publishing.
Abilitare la pubblicazione delle pagine quando lâaccesso è richiesto
Per consentire la visualizzazione delle pagine pubblicate anche quando un utente non ha effettuato lâaccesso:
- Attivare lâimpostazione
show_published_pages_login_requiredsuAdmin>Settings.
Pubblicare un argomento
Andare al primo post di un argomento pubblico e selezionare lâicona dei puntini di sospensione (
...).
Selezionare lâicona della chiave inglese.
Scegliere lâopzione âPage Publishingâ (Pubblicazione pagina).
ApparirĂ una finestra di dialogo modale, che consente di confermare lo slug (che può essere precompilato dal titolo del post) e di visualizzare in anteprima lâURL della pagina pubblicata.
Per consentire la pubblicazione delle pagine, è necessario disattivare le impostazioni del sito relative agli upload sicuri.
Per i siti ospitati, gli upload sicuri sono limitati al piano Enterprise. (secure uploads are limited to the Enterprise plan.)
Argomento pubblicato
Se lâopzione
Public(Pubblico) è spuntata, apparirĂ unâetichetta public.
Un argomento pubblicato mostrerĂ una notifica sotto il titolo che consente lâaccesso alle sue impostazioni di pubblicazione.
Pagina pubblicata
Depubblicare un argomento
Selezionare
Publishing Settings(Impostazioni di pubblicazione) sotto la notifica.
Cliccare su Unpublish (Depubblica)
La pagina è stata depubblicata.
Problemi comuni e soluzioni
Impossibile visualizzare le pagine pubblicate quando non si è connessi
Assicurarsi che lâimpostazione
show_published_pages_login_requiredsia attiva suAdmin>Settings.Aggiungere unâintestazione di Discourse alle pagine pubblicate
Attualmente, le pagine statiche sono pensate per essere minimali e non includono lâintestazione e il piè di pagina tipici di Discourse.
FAQ
Posso rendere pubblica una pagina FAQ o Informazioni?
Ă possibile creare un nuovo argomento con il contenuto desiderato e pubblicarlo come pagina. Modificare i link nelle impostazioni del sito per puntare a queste nuove pagine.
Come posso personalizzare lâaspetto di una pagina pubblicata?
Utilizzare la struttura del documento HTML e i corrispondenti selettori CSS per applicare stili personalizzati in
Admin>Customize>Themes>CSS.Risorse aggiuntive
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!
Awesome stuff, and thanks again for listening to your users. I love the âlets make this better for us allâ vibe that Discourse has! Weâll make heavy use of this.
When discussing one use (patching up an install that went a bit awry), another user pointed out a remaining bit of icing that could do with going on the cake:
Hey, is there any way to include the ability to make /faq and /about public as well, as they are currently hidden in Login Required sites. We can of course use the existing functionality that youâve just released for /faq by making our own, changing the link in settings, and explicitly linking to it. However, this is not pretty and the existing navigation to it remains hidden. We canât do that at all for /about of course.
Something that would go nice with this feature is to make publications onebox-compatible such that people could easily share the content.
Please excuse my ignorance, as I am very much a beginner in the HTML/CSS space⌠however, how would we go about applying our theme colour choices to published pages. At its simplest, Iâd like to use the dark background/white text to give the published pages the same darkmode experience as accessing our forums.
Is this already in the product, or do I need to play with HTML/CSS? If the latter, could anyone give me some pointers in the right direction? Thanks!
Can you make this a separate feature request please? This is not related to page publishing, as in I wouldnât have to change anything related to page publishing to make it possible. I do agree it would be better if all these âstaticâ pages could have more or less the same behaviour, but there are multiple solutions here (do nothing? add site settings? migrate these to page publishing?), so we might want to have a dedicated topic for this.
GTM not loaded on published pages? Would be nice.
Hmm that is a really good point.
Just trying to think of a solution here⌠would it work if type="text/javascript" and type="text/discourse-plugin" were treated differently? The API needs the latter, right?
Yes I think we already support having a text/javascript in the theme fields, so there are certainly solutions in this area.
That would be great.
So itâs currently impossible to have responsive published pages, and this site particularly wants
- images made available when sharing to public media, and
- responsive/resizing images displayed, especially on mobileâoh, mobile could just resize the image with CSSâthat should work, right?
+1 for having the Discourse header in published pages. Iâm missing my website logo, custom header links and beloved hamburger menu 
Another oddity: in posts, my lightboxed images open in a nice popup, whereas in published pages, they open in a new tabâŚ
I think whatâs needed is a set of theme components that add such. The last client I had to use this wanted the topic creator removed. I think itâs hard to guess what will meet peopleâs needs for this!
Are there currently any ongoing efforts for adding âsimpleâ (non-API) Javascript support to published pages? Or should we forget about this near- to mid-term ?
Can i display external non-Discourse JSON on this page? Because we canât use php code here and discourse strip most of html so i do not know how to do itâŚ
Ho un problema con una pagina pubblicata: il pulsante per copiare il contenuto del blocco di codice non è visibile sulla pagina pubblicata. Screenshot: Screenshot by Lightshot. Muovo il mouse sopra il blocco, ma il pulsante non appare. Quando sono loggato, invece, tutto funziona come al solito.
Qualcuno può replicare il problema? Esiste una soluzione?
Grazie @riking!
Sembra infatti che il text/javascript ânormaleâ venga eseguito sulle pagine pubblicate quando si trova nellâheader o nel footer di un componente del tema.
Ehi! Sembra quindi che esista un modo un poâ âhackyâ per far funzionare alcuni componenti del tema con la pubblicazione delle pagine.
Sto valutando lâidea di aggiungere un header/footer alle pagine pubblicate, e i componenti del tema sembrano la strada da seguire. Tuttavia, mi sembra poco saggio implementare qualcosa che potrebbe rompersi nel prossimo futuro.
@riking, sembra che il tipo text/javascript nellâheader o nel footer che funziona sulle pagine pubblicate fosse involontario. Intendete correggerlo o utilizzarlo per estendere le pagine pubblicate?
@syl, lâautore di DiscPage, ha menzionato la possibilitĂ di riimplementare il plugin DiscPage utilizzando le funzionalitĂ di Page Publishing. Ă ancora unâipotesi che avete in mente, @syl? Secondo voi, qual è la strada di minor resistenza per integrare entrambe le funzionalitĂ , @riking?
Purtroppo, la funzionalitĂ âPage Publishingâ non soddisfa le mie esigenze. Per poterla utilizzare, avrei bisogno che le pagine pubblicate:
- vengano visualizzate allâinterno del layout normale di Discourse, cioè con lâintestazione standard di Discourse (proprio come i Termini di servizio e lâInformativa sulla privacy), e
- vengano renderizzate come normali argomenti (decorati), ovvero supportando bbcode e plugin.
Nel frattempo ho utilizzato lo strumento di personalizzazione predefinito di Discourse:
- Identificare lâelemento aggiunto, ad esempio con una classe CSS
published-page-footer-links. - Personalizzare il CSS per nascondere questo elemento per impostazione predefinita e mostrarlo solo per le pagine pubblicate
- Aggiungere lâelemento nello spazio
Footer
2. In CSS, aggiungere:
/* Mostra i link nel piè di pagina solo nelle pagine pubblicate */
.published-page-footer-links { display: none; }
.published-page .published-page-footer-links { display: block;}
3. In Footer, aggiungere:
<nav class="published-page-footer-links">
Ciao! Questo è il piè di pagina per le pagine pubblicate!
</nav>











