Blog di Landing Pages :piccolo_aereo:

Funziona, ma non è più mantenuto [luglio 2022]

Ora puoi utilizzare il Plugin Landing Pages per gestire un blog con Discourse :tada:. Imposta una categoria come tuo blog: il primo post di ogni argomento in quella categoria avrà la propria pagina del blog e apparirà in una pagina di elenco dei post del blog.

Screen Shot 2021-05-13 at 5.04.18 PM

Questo progetto è stato uno sforzo congiunto tra @meghna e me. Tutto il lavoro di design è suo. Se ti piace il design di questo blog, assicurati di dare un’occhiata ai suoi Temi Discourse. Eventuali bug che trovi nella funzionalità sono invece miei :slight_smile:

Ottieni il codice

GitHub-Mark-64px Plugin Landing Pages
GitHub-Mark-64px Blog Landing Pages
GitHub-Mark-64px Blog Landing Theme

Vedi in azione

try.thepavilion.io/blog

Si prega di notare che tutto il contenuto del blog e mostrato negli screenshot di questo post proviene da The Conversation ed è utilizzato sotto la licenza Creative Commons adottata da quel sito. Tutto il contenuto appartiene ai suoi autori originali ed è utilizzato solo a scopo dimostrativo.

Come configurarlo

Segui questi passaggi in ordine:

  1. Installa il Plugin Landing Pages (come installare un plugin in Discourse).
  2. Installa il Blog Landing Theme (come installare un tema in Discourse).
  3. Configura i Blog Landing Pages come tuo repository landing pages.
  4. Nell’interfaccia di amministrazione di Landing Pages, modifica la categoria della pagina “Blog” nella categoria che desideri utilizzare per gestire il tuo blog.

Ed è tutto! Il primo post di ogni argomento in quella categoria diventerà ora un post sul tuo blog :slight_smile:

Limitare la pubblicazione ai contributori

Probabilmente vorrai limitare la pubblicazione in quella categoria a un gruppo di contributori del blog. Se non sei sicuro di come farlo, ecco una breve guida:

  1. Crea un gruppo di utenti, ad esempio “Contributors”, andando su /groups e cliccando su “New Group”.
  2. Aggiungi utenti al gruppo (“Add Members” in alto a destra).
  3. Nelle impostazioni di “Sicurezza” della categoria del blog, rimuovi il permesso “Create” da “Everyone” e aggiungi il tuo gruppo Contributors.

Ora solo i tuoi contributori possono pubblicare sul tuo blog, ma tutti possono commentare i post.

Cosa rende questa soluzione diversa dalle altre?

Esistono ottime soluzioni esistenti per gestire un blog all’interno o accanto a Discourse, tra cui:

Questa soluzione è leggermente diversa perché si tratta di un insieme completamente separato di pagine che non fanno parte dell’app client di Discourse, ma utilizza comunque lo stesso server. Questo offre alcuni vantaggi rispetto alla gestione di un blog separato (ad esempio su Wordpress) o all’utilizzo diretto di una categoria Discourse (ad esempio con un componente tema), tra cui:

  • Puoi creare contenuti e permettere agli utenti di rispondere su Discourse, ma avere un ambiente blog dedicato per la lettura e la condivisione. I lettori del tuo blog avranno la sensazione di leggere un blog e non un post del forum.
  • Hai un unico sistema di account utente (quello di Discourse).
  • Puoi utilizzare i gruppi di Discourse per limitare l’accesso al blog.
  • Puoi far apparire i post di Discourse come commenti sul tuo blog senza alcuna configurazione aggiuntiva.
  • Ottieni un tema blog responsivo e ben progettato pronto all’uso.
  • Devi configurare e pagare un solo server.
  • Il blog non ha bisogno di caricare il forum per funzionare, quindi può caricarsi rapidamente.
  • Puoi facilmente mantenere le pagine del blog (e il tema) sotto controllo versione.
  • Ricevi una bella email di notifica “Nuovo post del blog” formattata correttamente (vedi sotto).
  • Puoi gestirlo facilmente insieme a tutte le altre landing pages di cui hai bisogno utilizzando il Plugin Landing Pages.

Tuttavia, sebbene i Blog Landing Pages offrano alcuni vantaggi chiari, non saranno la migliore soluzione per blog di comunità per tutti. Dovresti provare le diverse soluzioni e vedere quale funziona meglio per te.

Cosa significa “Iscriversi” al blog?

Se sei loggato e clicchi sul pulsante “Iscriviti”, vedrai una finestra modale (se non sei loggato verrai reindirizzato alla pagina di login di Discourse).

Se hai spuntato la casella accanto a “Iscriviti ai post di [nome sito]” e hai inviato il modulo, verrai automaticamente impostato su “Osserva primo post” per la categoria del blog. Questo significa che riceverai una notifica email ogni volta che c’è un nuovo post in quella categoria, proprio come se fossi iscritto a un blog!

Puoi anche impostare le tue notifiche per la categoria del blog su “Osserva primo post” nel modo normale (in Discourse) e ciò avrà lo stesso effetto. Anche “Osservare” la categoria (dove ricevi un’email per ogni post, incluse le risposte) conta come essere iscritto.

Le notifiche email per una categoria blog sono un po’ speciali. Innanzitutto, a meno che tu non abbia creato il post stesso, riceverai sempre una notifica email se sei iscritto, anche se hai visitato il sito di recente. In secondo luogo, sono progettate per sembrare un’email di un post del blog.

Pianifichiamo di permettere a un amministratore del sito di modificare l’HTML dell’email del post del blog nell’interfaccia di amministrazione di Landing Pages a breve. Nota che se stai “Osservando” la categoria del blog, solo la notifica email per il primo post di ogni argomento sarà diversa. Le notifiche per le risposte appariranno come normali notifiche di Discourse.

Oltre il blogging

Puoi utilizzare le funzionalità descritte sopra per creare un insieme di landing pages per qualsiasi tipo di contenuto, proprio come Wordpress è un motore di blogging che puoi utilizzare per visualizzare altri tipi di contenuti (non blog). Potresti utilizzare una categoria per gestire un insieme di prodotti, luoghi o persone e ottenere automaticamente sia una landing page che un argomento di discussione per il contenuto, semplicemente creando un singolo post su Discourse.

Qualsiasi sviluppatore che conosca un po’ Ruby on Rails può realizzare qualsiasi altro caso d’uso con questo sistema. Non è necessario sapere come funziona Discourse. Poiché queste pagine del blog fanno parte del plugin Landing Pages, hai anche accesso a tutti i modelli esistenti in quel plugin, inclusi moduli di contatto, intestazione, piè di pagina, elenchi di argomenti e profili utente. Puoi leggere di più su questi modelli e altri nella documentazione del plugin.

41 Mi Piace

Sembra ottimo, buon lavoro! Il tema Blog Landing è obbligatorio? In tal caso, sarebbe possibile averlo come componente (così chi ha già un altro tema o un tema personalizzato può continuare a usarlo)?

2 Mi Piace

Le pagine di atterraggio del blog e le funzionalità del plugin Landing Pages su cui si basano sono progettate per funzionare con qualsiasi tema :slight_smile: Puoi personalizzarle come preferisci.

Non è necessario che sia attivo sul tuo sito Discourse per funzionare; basta che sia installato e poi selezionato nella pagina pertinente dell’interfaccia di amministrazione di Landing Pages. Ecco come appaiono le impostazioni del tema su try.thepavilion.io (puoi vedere le impostazioni della pagina nell’OP)

3 Mi Piace

Fantastico! Non vedo l’ora di provarlo. Grazie per questo :slight_smile:

2 Mi Piace

:exploding_head:

È davvero fantastico. Mi ha fatto ripensare a tutto il mio approccio. Grazie! :laughing:

2 Mi Piace

È fantastico!

Per la personalizzazione, dovrei fare un fork del repository per inserire le informazioni del mio sito? O c’è un modo migliore per farlo?

2 Mi Piace

Grazie @sethm, sì, il Blog Landing Theme e le Blog Landing Pages sono destinati a fungere da modelli, quindi puoi:

  • importarli direttamente nella tua istanza come descritto sopra;
  • crearne un fork; oppure
  • scaricarli e modificarli come faresti con un modello per Wordpress, Ghost, ecc.
3 Mi Piace

È possibile rendere visibile pubblicamente un sottoinsieme dei contenuti di discourse (come i contenuti di questo blog) anziché richiedere la registrazione/login? Grazie.

–Peter

1 Mi Piace

Ehi Peter, sì, per impostazione predefinita il contenuto in Discourse è visibile pubblicamente. Se non lo è, significa che hai abilitato l’impostazione del sito “richiesto accesso”. Puoi quindi controllare la visibilità di categorie specifiche utilizzando le autorizzazioni specifiche per categoria (nelle impostazioni della categoria). Puoi vedere uno screenshot delle impostazioni di accesso specifiche per categoria sopra.

1 Mi Piace

Grazie, ma non vedo lo screenshot per le impostazioni di accesso specifiche per categoria?

1 Mi Piace

Qualsiasi aiuto?
Forse le impostazioni specifiche della categoria non compaiono a meno che non rimuova “login richiesto”?
Ma non voglio rimuoverlo finché non avrò impostato le categorie su “pubblico” o “login richiesto”…
Grazie.

–Peter

1 Mi Piace

Dovresti essere in grado di visualizzare le autorizzazioni della categoria dalla scheda Sicurezza nella chiave inglese dell’amministratore nella pagina della categoria:

Spero che questo aiuti. :slightly_smiling_face:

2 Mi Piace

Ah! Grazie.
Quindi impostare tutte le categorie e gli utenti correnti sul livello di fiducia 2, e la nuova categoria che voglio sia pubblica sul livello di fiducia 0, e cambiare l’accesso tramite login, dovrebbe funzionare? O questa logica è sbagliata?

–Peter

1 Mi Piace

Se si desidera che la categoria del blog sia visibile sia alle persone anonime che ai titolari di account, è necessario impostare il gruppo Tutti su almeno ‘Vedi’.

E quindi impostare le altre categorie su almeno trust_level_0 in modo che le persone debbano avere un account per visualizzare e interagire con gli argomenti in esse contenuti.

1 Mi Piace

Grazie, ha funzionato. Apprezzo l’aiuto.

2 Mi Piace

Ho bisogno di un piccolo aiuto per capire questo plugin. Da un lato dici che puoi

Imposta una categoria come tuo blog e il primo post di ogni argomento in quella categoria avrà la sua pagina blog e apparirà in una pagina di elenco post del blog.

e dall’altro

  1. Imposta le Pagine di destinazione del blog come repository delle tue pagine di destinazione.

Sono confuso. Posso gestire un blog dai miei post di Discourse senza un repository git e file *html.erb?

1 Mi Piace

Il contenuto del blog viene estratto dai post di discourse. Il layout del blog è gestito dai file html, che potrebbero trovarsi nel repository Blog Landing Pages.

Questo plugin non è come Hugo, dove crei post del blog in markup. Anche se integrarlo con Hugo sarebbe fantastico, potremmo provarci a un certo punto (cc @jumagura)

3 Mi Piace

Gestisco un forum con Discourse da un paio di mesi, quindi sono ancora abbastanza nuovo. Ho già installato un plugin, ma quando ho provato a installare il Landing Pages Plugin stasera ho ricevuto un errore durante la ricostruzione dell’app e non si avviava. Forse c’è un problema di compatibilità o di versione con qualcosa, ma non so da dove cominciare. Qualcuno può darmi un suggerimento? Ho controllato il log ma non riesco a capire quale possa essere il problema.

Questa è l’ultima parte dei risultati dell’esecuzione della ricostruzione:

Pups::ExecError: cd /var/www/discourse & su discourse -c 'bundle exec rake db:migrate' fallito con ritorno #<Process::Status: pid 364 exit 1>
Posizione del fallimento: /usr/local/lib/ruby/gems/2.7.0/gems/pups-1.1.1/lib/pups/exec_command.rb:117:in `spawn'
exec fallito con i parametri {"cd"=>"$home", "hook"=>"db_migrate", "cmd"=>["su discourse -c 'bundle exec rake db:migrate'"]}
bootstrap fallito con codice di uscita 1
** FALLITO IL BOOTSTRAP ** si prega di scorrere verso l'alto e cercare messaggi di errore precedenti, potrebbero essercene più di uno.
./discourse-doctor può aiutare a diagnosticare il problema.
fb680c9c3b46dcd068abe877ed4187c730351c10139cc3eda2a8b7202822bf07
saul@discourseonubuntu2004-s-1vcpu-2gb-intel-lon1-01:/var/discourse$
saul@discourseonubuntu2004-s-1vcpu-2gb-intel-lon1-01:/var/discourse$

Grazie per qualsiasi aiuto.

1 Mi Piace

Qualcuno può controllare questo plugin? Ho lo stesso problema del ragazzo sopra di me. Ricevo alcuni errori mentre cerco di compilarlo, apparentemente è rotto da 2.9.0 beta 4 e versioni successive.

Potrei fornire alcuni log, ma sarebbe meglio se il creatore controllasse un’installazione di discourse fresca e poi provasse a compilarlo, perché l’ho testato sia su un’installazione di discourse esistente che su una fresca, fallisce sempre la compilazione.

Ho seguito esattamente i passaggi forniti nel post iniziale.

  1. Installare il Plugin Landing Pages (come installare un plugin in Discourse) .
  2. Installare il Tema Blog Landing , (come installare un tema in Discourse) .
  3. Impostare le Pagine di destinazione del blog come repository delle pagine di destinazione .
  4. Nell’interfaccia di amministrazione delle Pagine di destinazione, cambiare la categoria della pagina “Blog” in qualsiasi categoria si desideri utilizzare per gestire il proprio blog.
1 Mi Piace

Aggiornerò questo plugin per renderlo compatibile con l’ultima versione di Discourse nella prossima settimana.

4 Mi Piace