2 caselle di commento di Discourse stanno comparendo.
Piattaforma: WordPress
Tema: Astra
Prima utilizzavamo il tema Extol, poi siamo passati ad Astra. Abbiamo aggiunto l’hook della sezione commenti tramite Astra Site Builder e l’abbiamo posizionato sotto il post tramite condizione di visualizzazione.
Tutti i post del blog mostrano la sezione commenti normalmente tranne 3 post (che mostrano la sezione commenti di Discourse due volte).
Ciao, questo sembra un problema con il tuo tema, o forse con il modo in cui utilizzi “Astra Site Builder”, ma vediamo se possiamo comunque aiutarti.
Forse potresti spiegare meglio come appare? Hai usato del codice? Potresti collegarti alla documentazione di “Astra Site Builder”. È un tema abilitato ai blocchi? Cerca di fornire quanti più dettagli possibile.
In realtà non vedo alcun codice durante la modifica del codice e sto usando il modello predefinito per i singoli post del tema, che non dovrebbe avere il codice del commento di discourse.
Sì, ho utilizzato il blocco commenti di WP Discourse sul costruttore di siti Astra. Anche disabilitando l’hook del costruttore di siti Astra, questa casella di commento aggiuntiva di Discourse è ancora visibile sotto il post.
In precedenza utilizzavamo il tema extol. Abbiamo aggiunto il blocco commenti di Discourse direttamente nella pagina del singolo post.
Poi siamo passati ad Astra.
Astra ha alcune limitazioni, quindi non possiamo modificare il modello predefinito del singolo post. Ecco perché ho aggiunto la casella dei commenti di Discourse tramite l’hook del site builder di Astra, che funziona perfettamente.
Anche se disabilito l’hook del site builder di Astra, queste 3 pagine mostrano ancora la casella dei commenti di Discourse, non abbiamo aggiunto il blocco della casella dei commenti nel post. E non sono riuscito a capire da dove provenga.
Disabilita l’impostazione “Abilita commenti Discourse” in WP Discourse > Commenti e dimmi quale effetto ha (assicurati di salvare la modifica dell’impostazione).
Il problema è che, indipendentemente dalla combinazione di tema e site builder che stai utilizzando, hai sia un template PHP per i post sia un template per i post a blocchi sulla stessa pagina (il che non è normale). Questo è il motivo per cui sta accadendo.
Se disabilito i commenti dalle impostazioni del personalizzatore, scompare solo la casella dei commenti. La casella dei commenti di discourse è ancora visibile.
Quando qualcuno commenta un thread del forum di discourse, appare una nuova sezione di commenti sotto il post del blog correlato. Non sono riuscito a trovare comments_template.
Potresti suggerirmi qualche articolo o tutorial video a riguardo?
C’è una chiamata alla funzione del modello di commenti nei modelli PHP che stai utilizzando, che causa questo. Sarà simile a questa.
<?php comments_template(); ?>
Dove si trova dipenderà dai modelli PHP che stai utilizzando. Trova quella funzione e risolverai il problema. Purtroppo non c’è molto altro aiuto che noi, o un articolo, possiamo dare.
L’unica altra cosa che suggerirei è di contattare le persone che supportano “Astra”. Il problema di fondo qui è questa combinazione di modelli PHP e blocchi che hai in corso. Forse possono fare un po’ di luce su questo.
Prima di tutto, voglio ringraziare di cuore @angus per avermi seguito in questo percorso e per avermi fornito una guida così preziosa. Il tuo supporto significa molto e apprezzo sinceramente il tempo e lo sforzo che hai dedicato ad aiutarmi a risolvere questo problema. Permettetemi di illustrarvi tutto ciò che ho esplorato e provato, sperando che possa aiutare altri ad affrontare problemi simili.
Contesto e configurazione iniziale:
Inizialmente, stavamo utilizzando il tema Extol, dove abbiamo aggiunto il blocco commenti di Discourse direttamente nella pagina del singolo post. Questo ha funzionato perfettamente. Quando siamo passati al tema Astra, le cose si sono complicate. Poiché Astra presenta alcune limitazioni (come l’impossibilità di modificare facilmente il modello predefinito del singolo post), ho aggiunto la casella dei commenti di Discourse tramite gli hook di Astra Site Builder e l’ho posizionata sotto il post in base a una condizione di visualizzazione.
Questo ha funzionato senza problemi per la maggior parte dei post, ma per tre post specifici, la sezione dei commenti di Discourse è apparsa due volte. Non riuscivo a capire perché questo accadesse solo per questi post, mentre altri venivano visualizzati correttamente. Questa anomalia mi ha fatto pensare che potesse esserci un residuo della vecchia configurazione di Extol, ma non sono riuscito a individuare nulla di definitivo.
Esplorazione del problema:
Ho innanzitutto controllato l’editor del post, cercando impostazioni o blocchi che potessero essere stati abilitati o disabilitati manualmente per i commenti di Discourse. Sorprendentemente, non c’era nulla: nessun blocco aggiuntivo, nessuna impostazione diversa.
Successivamente, ho disattivato l’hook di Astra Site Builder per vedere se ciò avrebbe rimosso la sezione commenti aggiuntiva. Non è successo; la casella duplicata è rimasta. Ciò ha suggerito che la duplicazione stava avvenendo al di fuori della configurazione di Astra Site Builder.
Ho quindi provato a disattivare “Abilita commenti Discourse” nelle impostazioni di WP Discourse. Come mi hai consigliato, ciò ha rimosso entrambe le sezioni commenti, indicando che entrambe venivano generate in qualche modo tramite questa integrazione.
Dopo averla riattivata, ho approfondito i file del tema. Ho cercato in single.php, content-single.php e altri file di modello correlati qualsiasi istanza di comments_template();. Sfortunatamente, non sono riuscito a trovare nulla che chiamasse esplicitamente questa funzione. Questo mi ha lasciato perplesso. Se si trattava di un problema del modello PHP, perché non riuscivo a trovarlo?
Ho anche provato a verificare la presenza di modelli personalizzati. Forse questi tre post utilizzavano un modello diverso? Non sono riuscito a confermarlo. Tutto puntava alla configurazione predefinita.
Un’altra teoria era legata alla sincronizzazione dei commenti: forse quando qualcuno commentava sul forum di Discourse, ciò attivava la comparsa di un’altra sezione commenti sotto il post del blog correlato. Questo sembrava plausibile, ma non sono riuscito a trovare un’impostazione o una documentazione che si collegasse direttamente a questo comportamento.
Ho ricorso a una soluzione CSS temporanea per nascondere la sezione commenti duplicata:
CSS aggiunto nel personalizzatore del tema WP CSS aggiuntivo
#comments {
display: none !important;
}
CSS aggiunto nell’hook di Astra:
#comments {
display: block !important;
}
Sebbene questo abbia funzionato, concordo sul fatto che non sia una soluzione permanente. Preferirei di gran lunga affrontare la causa principale.
Pensieri e teorie:
Sospetto che possa trattarsi di un problema più profondo nel modo in cui Astra gestisce gli hook e i blocchi: forse un conflitto o una duplicazione nel modo in cui vengono incorporati i commenti di Discourse.
Un’altra possibilità è che ci sia un’impostazione nascosta o una configurazione residua del vecchio tema Extol che stia ancora influenzando le cose.
Oppure potrebbe essere correlato a come Discourse si sincronizza con WordPress. Quando viene effettuato un commento nel forum, potrebbe attivare qualcosa all’interno del sito WordPress, creando quella sezione aggiuntiva.
Cosa non ho provato:
Contattare il supporto Astra: Come hai suggerito, potrebbe valerne la pena. Potrebbero essere a conoscenza di problemi simili o fornire informazioni su come il loro tema gestisce i commenti e gli hook.
Disattivare tutti i plugin tranne WP Discourse: Questo potrebbe aiutare a isolare se un altro plugin sta causando questo comportamento.
Testare con un post completamente nuovo: Creare un nuovo post da zero e vedere se il problema si ripresenta potrebbe rivelare qualcosa.
Prossimi passi:
Per ora, penso che contatterò il supporto Astra ed esplorerò la possibilità di eseguire ulteriori test con i plugin disattivati. Potrei anche provare un approccio diverso utilizzando un tema figlio e vedere se riesco a gestire manualmente la sezione dei commenti di Discourse in modo più preciso.
Ancora una volta, Angus, grazie mille per il tuo aiuto e la tua pazienza. Le tue intuizioni sono state preziose e, anche se non l’ho ancora risolto, mi sento più vicino a capire cosa sta succedendo. Se qualcun altro ha pensieri, intuizioni o esperienze con problemi simili, sarei felice di sentirli!
Continuerò a scavare e aggiornerò qui se scoprirò qualcosa di nuovo. Saluti!
Penso che il tuo problema sia previsto.
Il tema Astra non supporta la funzionalità Full Site Editing né funziona con i blocchi.
In altre parole, Astra non è un tema a blocchi e per personalizzare le pagine è necessario utilizzare un page builder di terze parti (come Elementor, nel tuo caso).
Vedrai sicuramente un duplicato se non stai utilizzando il blocco Discourse per sostituire il blocco Commenti originale. Angus mostra cosa dovresti fare se avessi un tema a blocchi nel suo video: WP Discourse Comments Block.
Non stai sostituendo l’area dei commenti quando aggiungi il blocco Discourse utilizzando gli hook; stai inserendo codice personalizzato in una posizione specifica.
Qual è la soluzione?
Se preferisci l’aspetto/la posizione dell’hook Astra, c’è un modo per rimuovere l’area dei commenti nativa di WP. Puoi aggiungere questo codice PHP. Vedi How to Add Custom PHP Code in the Astra Theme? se hai bisogno di aiuto su come fare.
Grazie mille, @Arkshine!
Finalmente la sezione commenti nativa non è più visibile: che viaggio è stato!
E un enorme ringraziamento anche a @angus. La tua pazienza, guida e profonde intuizioni sono state davvero inestimabili durante tutto questo processo. Apprezzo sinceramente il tempo e lo sforzo che hai dedicato ad aiutarmi a risolvere questo problema.
Dal testare diverse impostazioni al debug del mix di template block e PHP, ho esplorato tutto: dalla disabilitazione degli hook di Astra alla modifica del CSS, al controllo del template dei commenti e persino all’individuazione del motivo per cui solo alcuni post erano interessati. È stata un’altalena di tentativi ed errori, ma ogni passo mi ha aiutato a capire meglio il sistema.
Questo non sarebbe stato possibile senza la tua esperienza e la tua disponibilità ad assistere. Il tuo aiuto non ha solo risolto il problema, ma mi ha insegnato tantissimo su WordPress, Discourse e le integrazioni dei temi. Sono oltremodo grato.
A chiunque si trovi ad affrontare problemi simili: continua a testare, continua a imparare e non esitare mai a chiedere aiuto. La community è fantastica!