Migrazione di topic incorporati da topicId a creazione automatica di topic.

L’ambiente: Ho un forum Discourse e un sito web. Il sito web ha delle pagine. Le pagine utilizzano argomenti Discourse incorporati per i commenti.

Come parte di un processo di migrazione, sto attualmente utilizzando una mappatura hard-coded di “URL della pagina web” a “ID dell’argomento Discourse” e utilizzo codice lato server nelle pagine web per incorporare l’argomento Discourse appropriato.

Questo funziona bene per tutte le pagine web esistenti perché ho migrato i commenti precedenti negli argomenti Discourse.

Per le nuove pagine web, sarebbe troppo oneroso a) creare un nuovo argomento e b) continuare a tenere traccia delle nuove mappature tra pagine web e argomenti. Quindi vorrei passare alla logica di Discourse per la creazione di argomenti su richiesta e non specificare più gli ID degli argomenti esistenti nelle pagine web.

Presumo che Discourse abbia una propria tabella di mappatura per sapere quale argomento servire se arriva una richiesta per un thread di commenti incorporato.

È così e posso inserire manualmente le mie mappature esistenti lì, quindi passare le mie pagine web a utilizzare quella funzionalità?

Quindi vuoi incorporare i commenti di Discourse su un altro sito Web tramite Javascript?

È quello che faccio già ed è lì che voglio cambiare la configurazione.

Attualmente utilizzo Embed Discourse comments on another website via Javascript (“Configurazione di Discourse per l’incorporamento (impostazione semplice)”)

E voglio passare alla configurazione standard Embed Discourse comments on another website via Javascript (“(Configurazione alternativa) Collegamento a argomenti esistenti”)

1 Mi Piace

Ho aggiunto un semplice switch if al mio sito web che utilizza un topicId memorizzato, se disponibile, e altrimenti l’discourseEmbedUrl della pagina.

Purtroppo ho avuto un URL non valido per alcune pagine e ora ho riferimenti di thread errati tra le pagine e i thread. Ho trovato la tabella topic_embeds, che sembra essere quella giusta. Posso eliminare in sicurezza da quella tabella e rivisitare le pagine per rigenerare i thread? O devo ripulire alcune righe correlate altrove?