È possibile utilizzare Discourse come sistema di commenti per WordPress. Le funzionalità di commento dipendono dalle funzionalità di pubblicazione, quindi è necessario che la pubblicazione sia configurata affinché i commenti funzionino. Se hai configurato la pubblicazione e sei pronto per configurare i commenti, guarda questo breve video o segui le istruzioni qui sotto.
Prossimo Passo
Una volta configurati i commenti, potresti voler consultare i seguenti argomenti
Istruzioni
Configurazione dei commenti
Affinché i commenti di Discourse vengano visualizzati sul tuo sito WordPress, devi selezionare l’impostazione Abilita commenti Discourse. Quando abilitata, vedrai due opzioni. L’opzione Visualizza commenti caricherà un modello di commento per ogni post di WordPress che è stato pubblicato su Discourse. Questo modello visualizzerà i commenti di Discourse sotto i post di WordPress. L’opzione Visualizza un link ai commenti caricherà un modello di commenti che visualizza un link all’argomento Discourse associato sotto i post pubblicati. Il numero di risposte all’argomento verrà visualizzato nel link, ma nessuna risposta verrà visualizzata su WordPress.
Entrambe queste opzioni di commento funzionano caricando modelli di commento per i post di WordPress. Ciò significa che funzioneranno solo se i commenti sono abilitati per il post. Se desideri abilitare i commenti per tutti i post, ma non vuoi che vengano visualizzati commenti storici di WordPress per i post che non sono stati pubblicati su Discourse, abilita l’impostazione Rimuovi modello commenti WordPress.
Impostazioni
Ecco alcune brevi descrizioni su cosa fanno le altre impostazioni di commento. Se non sei ancora sicuro di una delle impostazioni, rispondi a questo argomento e chiedi ulteriori chiarimenti.
Carica commenti con Ajax
Questa impostazione viene utilizzata per caricare i commenti dal client WordPress, invece di caricarli dal server. Questo è utile se la cache della pagina impedisce il caricamento di commenti freschi sul tuo sito.
Carica CSS commenti
Questa impostazione carica un foglio di stile che corregge i problemi con le onebox e le citazioni di Discourse quando vengono visualizzate su WordPress.
Mostra commenti WP esistenti
Seleziona questa impostazione per mostrare anche i commenti WordPress esistenti per i post che sono stati pubblicati anche su Discourse, seleziona l’impostazione.
Titolo commenti esistenti
Se stai mostrando i commenti esistenti, questa impostazione aggiungerà un titolo sopra i commenti di WordPress.
Impostazioni di importazione selettiva
Ci sono una serie di impostazioni che ti consentono di importare selettivamente i commenti. Questi dovrebbero essere autoesplicativi. I valori predefiniti per ciascuno di questi sono un buon punto di partenza, quindi cambiali solo se hai un motivo per farlo
- Commenti visibili massimi
- Numero minimo di risposte
- Punteggio minimo dei post
- Livello di fiducia minimo
- Ignora punteggio livello di fiducia
- Importa solo quelli apprezzati dai moderatori
Formato data/ora personalizzato
Questa impostazione formatta la data visualizzata per ogni commento di Discourse che appare sul tuo sito WordPress. Inizia con il valore predefinito. Se desideri modificare il formato della data, fai clic sul link nella descrizione dell’impostazione per i dettagli su come farlo.
Cache HTML commenti
Questa impostazione può essere utilizzata per migliorare le prestazioni. La cache dell’HTML dei commenti riduce il numero di richieste effettuate a Discourse. La sua impostazione associata Cancella cache HTML commenti dovrebbe essere autoesplicativa.
Log commenti dettagliati
Abilitando questa opzione verranno registrati tutti i recuperi riusciti di commenti da Discourse, oltre agli errori (il valore predefinito).
Webhook di sincronizzazione dati commenti
Abilitare il webhook di sincronizzazione dati commenti nel pannello delle impostazioni “Webhook” può ridurre notevolmente il numero di richieste API effettuate da WordPress a Discourse. Prima di abilitare il webhook
-
visita l’URL di Discourse fornito nella descrizione dell’impostazione (
http://forum.example.com/admin/api/web_hooks). -
Fai clic sul pulsante ‘Nuovo Webhook’ e compila il modulo
-
Nel campo URL payload, inserisci l’URL fornito nella descrizione del campo WP Discourse
Sync Comment Data. Sarà qualcosa di simile a questo, tranne che utilizzerà l’URL del tuo sito WordPress:https://wp-discourse.dev/wp-json/wp-discourse/v1/update-topic-content. -
Assicurati che il campo Content Type sia impostato su
application/json. -
Nell’input Secret, inserisci una stringa di testo, lunga almeno 12 caratteri. Quindi copia la stessa chiave nell’impostazione WP Discourse
Webhook Secret Key. -
Nella casella “Quali eventi dovrebbero attivare questo webhook?”, assicurati che sia selezionato “Post Event”.
-
Utilizza il campo Categorie attivate se pubblichi post da WordPress solo in categorie specifiche. In questo modo, il tuo sito WordPress non avrà bisogno di elaborare richieste webhook per argomenti che non hanno un post Discourse associato.
-
Lascia abilitata l’impostazione Verifica certificato TLS dell’URL payload.
Infine, abilita la casella di controllo “Attivo” e fai clic su crea. Quando il webhook è stato salvato, fai clic sul pulsante Vai agli eventi.
-
-
Torna su WordPress, assicurati di aver inserito il segreto webhook da Discourse nel campo
Webhook Secret Keye abilita l’impostazione webhookSync Comment Data. Quindi salva le opzioni.
Il webhook di Discourse dovrebbe ora funzionare. Dovresti verificarlo facendo clic sul pulsante Ping del webhook su Discourse (trovato in /admin/api/web_hooks/:webhook_id/events). Assicurati che il ping del webhook restituisca un codice di stato 200.
Regolazione del periodo di sincronizzazione comments_number per le pagine di archivio di WordPress
Per ottenere il numero corretto di commenti di Discourse per un post, il plugin deve periodicamente effettuare una richiesta HTTP a Discourse per ottenere il numero corrente di commenti. Nelle pagine singole questo periodo è impostato per non essere più frequente di ogni 10 minuti. Per le pagine di archivio, il periodo è impostato per non essere più frequente di una volta ogni 24 ore. Il motivo è evitare di effettuare più richieste a Discourse ogni volta che viene acceduta una pagina di archivio.
Se scopri ancora che il plugin effettua troppe richieste a Discourse quando visualizza le pagine di archivio del tuo sito, puoi regolare archive_page_sync_period agganciandoti al filtro 'discourse_archive_page_sync_period'. Puoi farlo aggiungendo qualcosa di simile al file functions.php del tuo tema:
add_filter( 'discourse_archive_page_sync_period', 'my_namespace_archive_page_sync_period' );
function my_namespace_archive_page_sync_period( $sync_period ) {
// Questo cambierà il periodo di sincronizzazione per i post archiviati a una volta alla settimana.
return WEEK_IN_SECONDS;
}
Se scopri che il plugin non effettua abbastanza richieste a Discourse per recuperare i numeri di commenti correnti per le pagine di archivio, puoi aggiungere qualcosa di simile al file functions.php del tuo tema. Questo imposterà archive_page_sync_period a 10 minuti.
Nota: su un sito trafficato questo potrebbe caricare pesantemente il tuo server.
add_filter( 'discourse_archive_page_sync_period', 'my_namespace_archive_page_sync_period' );
function my_namespace_archive_page_sync_period( $sync_period ) {
// Questo cambierà il periodo di sincronizzazione per i post archiviati a una volta alla settimana.
return 10 * MINUTE_IN_SECONDS;
}
Visualizza commenti senza caricare il modello di commenti di WordPress
Il plugin WP Discourse utilizza il modello di commenti di WordPress per caricare i commenti di Discourse. Se il tuo tema non carica il modello di commenti, puoi visualizzare i commenti con la funzione helper statica get_discourse_comments. Questa funzione richiede di fornire l’ID del post di WordPress per il quale si desidera visualizzare i commenti. Ecco un semplice esempio del suo utilizzo:
use WPDiscourse\\Utilities\\Utilities as DiscourseUtilities;
$discourse_comments = DiscourseUtilities::get_discourse_comments(859);
echo $discourse_comments;
I commenti verranno visualizzati nello stesso modo in cui vengono visualizzati se selezioni l’opzione Abilita commenti Discourse/Visualizza commenti (trovata nella scheda Impostazioni commenti del plugin). Quando viene utilizzata questa funzione, il valore di tale impostazione viene ignorato, ma tutte le altre impostazioni dei commenti vengono rispettate.
Risoluzione dei problemi
Il problema più comune con i commenti di Discourse è che potrebbero non apparire istantaneamente dopo che il post è stato creato su Discourse. Questo ritardo è intenzionale poiché il plugin cerca di ridurre il numero di richieste che deve effettuare a Discourse. Effettuare una richiesta ogni volta che la pagina viene caricata rallenterà il tuo sito. Se non vedi apparire i commenti istantaneamente, attendi 10 minuti prima di aggiornare di nuovo la pagina.
Problemi con il numero di commenti quando si visualizzano sia i commenti di Discourse che quelli di WordPress
Il plugin wp-discourse utilizza l’hook del filtro WordPress get_comments_number in modo che il numero di commenti di Discourse creati per un post possa essere visualizzato in tutto il tuo tema. Questo crea un conflitto quando sia i commenti di Discourse che quelli di WordPress vengono visualizzati per un post. Il plugin è in grado di risolvere tale conflitto nella maggior parte dei luoghi. Un luogo in cui non può essere risolto è nel titolo del commento che i temi WordPress spesso visualizzano all’inizio della sezione dei commenti. Questa è la sezione che inizia con qualcosa come “2 pensieri su…”.
Il modo più semplice per farlo è aggiungere una regola al file css del tuo tema.
.discourse-comments-area ~ .comments-area .comments-title {
display: none;
}


