Unire Discourse e SMF

Ciao!

Ho la seguente domanda:
Dal 2017 ho un forum SMF con ora circa 4000 post.
L’anno scorso ho avuto in parallelo un forum Discourse con circa 1000 post, ma al momento non è online, perché sono tornato a SMF nel dicembre 2021.
Bene, semplicemente non mi piace più SMF, quindi vorrei migrarlo a Discourse, ma vorrei anche recuperare i 1000 post dal forum Discourse.
Dal forum Discourse ho un backup, e da SMF non è un problema fare un backup.

La migrazione di SMF a Discourse non dovrebbe essere un problema, anche se non ci ho mai provato.
Devo ammettere che entrambi hanno categorie simili, ma ci sono differenze.

È possibile unire entrambi i forum in uno solo?
Se sì, qual è il modo migliore per farlo?

Da SMF mi servono solo gli utenti, che sono gli stessi in entrambi i forum (più o meno), e i post. In linea di principio, tutti i post del forum SMF potrebbero essere importati in una categoria separata, li sposterei poi io stesso nelle categorie corrette (o li lascerei lì come una sorta di archivio).

Il mio approccio sarebbe il seguente:

  1. Faccio un backup dell’attuale SMF e lo importo in un secondo SMF e sposto tutti gli argomenti e i post lì in un’unica categoria, e ne faccio di nuovo un backup per l’importazione in Discourse.
  2. Rimetto online il forum Discourse “vecchio”. (con o senza i 1000 post?).
  3. Importo il backup da SMF.

Qui ho la domanda se questo funziona affatto, perché gli argomenti e i post hanno ID e timestamp da SMF e questi sono collegati con gli utenti, ecc.

Onestamente, non ho idea di come procedere e se sia anche possibile.
Lo script è già adattato per SMF 2.1.x?

Qualsiasi aiuto è apprezzato!

Non sono sicuro che Discourse supporti backup nativi da SMF. So che il team ufficiale di Discourse può assistere con le migrazioni, ma non conosco il costo. In passato, ho utilizzato l’API di Discourse per migrare grandi quantità di dati del forum. Ho creato le mie categorie sul forum Discourse. Una volta fatto, ho creato uno script Python per eseguire lo scraping del mio vecchio forum e popolare quello nuovo con argomenti, utenti, ecc.

Nei documenti è presente un’istruzione su come migrare da SMF a Discourse.

https://meta.discourse.org/docs?topic=90314

Sarebbe utile uno script per estrarre i dati da SMF e importarli in Discourse, se potessi programmare tali cose. :wink:

2 Mi Piace

Ah, ok. Non sapevo avessero documentazione ufficiale su come migrare da SMF2. Il tuo forum è un forum SMF2 o SMF1?

Sì e no, è un SMF 2.1.x e SMF è cambiato molto da 2.0.x a 2.1.x

E ho ancora il problema di unire entrambi i forum.

1 Mi Piace

Ok. Grazie per queste informazioni :slight_smile:
A quale passaggio della guida alla migrazione stai riscontrando un problema?

1 Mi Piace

vedi anche: Merge two Discourse sites into one

Con la precisazione che non ho eseguito personalmente migrazioni, il mio approccio sarebbe:

  • migrare i tuoi dati SMF in una nuova istanza
  • unire le due istanze di Discourse con la guida sopra indicata

Bene, abbiamo tutti i nostri martelli, ma ho scoperto che lo script di unione dei siti DIscourse perdeva molti casi limite (non ricordo più quali fossero). E poi hai due transizioni da fare.

Probabilmente eseguirei semplicemente lo script SMF sopra il sito Discourse esistente. Quando l’ho fatto, ho apportato modifiche per fare cose come vedere che le categorie vengono unite e gli utenti vengono allineati tra i siti. Se conosci un po’ la programmazione, gli script sono generalmente abbastanza facili da capire, anche se non conosci Ruby.

2 Mi Piace

Beh, non ho ancora iniziato.
Ma la mia domanda era 1. se questo script funziona con SMF2.1, e 2. se è possibile unire un SMF in un’istanza Discourse esistente.

Mi è completamente sfuggito. Grazie per la tua risposta. Penso che questo sia il modo in cui dovrebbe funzionare.

@pfaffman
Non ho bisogno di tutto da SMF, solo dei post, degli argomenti e degli utenti.

Forse dovrò armeggiare per farlo funzionare.

Quasi tutto viene importato. È probabile che sia più facile importare le categorie che non farlo.

Sì. E non c’è modo di sapere quanto lavoro ci sarà finché non ci provi.

Penso che seguirò questi passaggi:

  1. Prenderò il mio SMF e sposterò ogni argomento (con i post) in una categoria e poi farò un backup del db.
  2. Installerò un Discourse fresco e importerò il backup SMF (spero che lo script di importazione funzioni con SMF 2.1).
  3. Eliminerò e reinstallò Discourse e poi caricherò il mio backup Discourse con le impostazioni e i post
  4. Unirò i due forum Discourse in uno solo con la guida che @supermathie ha linkato

Spero che funzioni, altrimenti dovrò pagare qualcuno che possa farlo per me.