Should Discourse fare uno sforzo per diventare una piattaforma di commenti valida?

Ci sto lavorando ora. La prima versione è per un sito WordPress headless che utilizza il framework Remix per il suo front-end. Una volta fatto, farò una versione per i siti WordPress normali. Sarà probabilmente un plugin che estende il plugin WP Discourse. Spero che la maggior parte di ciò che sto facendo sul sito WordPress headless possa essere trasferito ai siti WordPress normali, ma potrebbe richiedere alcuni compromessi.

Consentire agli utenti di commentare direttamente da un sito esterno è banale da implementare. Il requisito principale è che il sito esterno abbia accesso alle credenziali dell’utente di Discourse. Ciò può essere fatto sia utilizzando il sito esterno come provider DiscourseConnect per Discourse, sia configurando Discourse come provider DiscourseConnect per il sito esterno.

Nel secondo scenario, in cui il sito esterno non è il provider DiscourseConnect per Discourse, la prima volta che un utente desidera commentare dal sito esterno, dovrà fare clic su un link per collegare il proprio account sul sito esterno al proprio account Discourse (o registrarsi su Discourse se non l’ha ancora fatto). Può essere abbastanza trasparente dal punto di vista dell’utente.

La modifica di cui sopra, tuttavia, non fa sì che il tutto sembri un normale sistema di commenti. Una normale aspettativa per un sistema di commenti è che si possano leggere e interagire con tutti i commenti. Il plugin WP Discourse visualizza solo una selezione di commenti estratti da un percorso speciale fornito da Discourse. Non fornisce alcuna funzionalità per interagire con i commenti.

Le parti difficili del problema sono:

  • paginare tutti i commenti di un argomento su WordPress, tenendo presente che potrebbero essercene migliaia
  • fornire un’interfaccia utente che dia all’utente un feedback su dove si trova in un lungo elenco di commenti
  • capire come visualizzare i commenti che sono risposte dirette ad altri commenti. (La convenzione di Discourse per questo è in contrasto con il modo in cui la maggior parte dei sistemi di commenti gestisce le risposte.)
  • consentire agli utenti di rispondere direttamente a un commento, mettere “mi piace” a un commento, modificare i propri commenti, ecc.
  • gestire i commenti creati su Discourse che potrebbero contenere contenuti o markup che non possono essere facilmente visualizzati o con cui non si può interagire sul sito esterno. Ad esempio, onebox, sondaggi…
  • fornire un modo per filtrare i commenti per più recenti, più vecchi, migliori, ecc…

Tutto ciò deve essere realizzato senza mettere un carico eccessivo sul server del sito esterno, fare troppe richieste API a Discourse o consumare troppa memoria sul dispositivo dell’utente (l’obiettivo è creare un sistema di commenti leggero). È realizzabile, ma non è qualcosa che può essere semplicemente inserito nel codice esistente di WP Discourse senza apportare modifiche significative ad esso.

4 Mi Piace