Fusionner Discourse et SMF

Bonjour !

J’ai la question suivante :
Depuis 2017, j’ai un forum SMF avec maintenant environ 4000 messages.
L’année dernière, j’avais en parallèle un forum Discourse avec environ 1000 messages, mais il n’est plus en ligne actuellement, car je suis retourné à SMF en décembre 2021.
Eh bien, je n’aime tout simplement plus SMF, donc j’aimerais le migrer vers Discourse, mais j’aimerais aussi conserver les 1000 messages du forum Discourse.
Du forum Discourse, j’ai une sauvegarde, et de SMF, ce n’est pas un problème de faire une sauvegarde.

Migrer SMF vers Discourse ne devrait pas poser de problème, bien que je n’aie jamais essayé.
Je dois admettre que les deux ont des catégories similaires, mais il y a des différences.

Est-il possible de fusionner les deux forums en un seul ?
Si oui, quelle est la meilleure façon de procéder ?

De SMF, j’ai seulement besoin des utilisateurs, qui sont les mêmes dans les deux forums (plus ou moins), et des messages. En principe, tous les messages du forum SMF pourraient être importés dans une catégorie séparée, je les déplacerais moi-même dans les bonnes catégories (ou les laisserais là comme une sorte d’archive).

Mon approche serait la suivante :

  1. Je fais une sauvegarde du SMF actuel et l’importe dans un 2ème SMF et y déplace tous les sujets et messages dans une seule catégorie, et j’en fais une nouvelle sauvegarde pour l’importation vers Discourse.
  2. Je remets le “vieux” forum Discourse en ligne. (avec ou sans les 1000 messages ?).
  3. J’importe la sauvegarde de SMF.

Ici, j’ai la question de savoir si cela fonctionne du tout, car les sujets et les messages ont des identifiants et des horodatages de SMF et ceux-ci sont liés aux utilisateurs, etc.

Honnêtement, je n’ai aucune idée de comment procéder et si c’est même possible.
Le script est-il déjà adapté pour SMF 2.1.x ?

Toute aide est appréciée !

Je ne suis pas sûr que Discourse prenne en charge les sauvegardes natives de SMF. Je sais que l’équipe officielle de Discourse peut aider aux migrations, mais j’ignore le coût. Par le passé, j’ai utilisé l’API Discourse pour migrer de grandes quantités de données de forum. J’ai créé mes catégories sur le forum Discourse. Une fois cela fait, j’ai créé un script Python pour parcourir mon ancien forum et peupler le nouveau avec des sujets, des utilisateurs, etc.

Dans la documentation, il y a une instruction sur la façon de migrer de SMF vers Discourse.

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

Un script pour extraire les données de SMF et les importer dans Discourse serait bien, si je pouvais programmer de telles choses. :wink:

2 « J'aime »

Ah, d’accord. Je ne savais pas qu’ils avaient de la documentation officielle sur la façon de migrer depuis SMF2. Votre forum est-il un forum SMF2 ou SMF1 ?

Oui et non, c’est un SMF 2.1.x, et SMF a beaucoup changé de 2.0.x à 2.1.x

Et j’ai toujours le problème de fusionner les deux forums.

1 « J'aime »

ok. Merci pour ces informations :slight_smile:
À quelle étape du guide de migration rencontrez-vous un problème ?

1 « J'aime »

voir aussi : Merge two Discourse sites into one

Avec la réserve que je n’ai pas effectué de migrations moi-même, mon approche serait :

  • migrer vos données SMF vers une nouvelle instance
  • fusionner les deux instances Discourse avec le guide ci-dessus

Eh bien, nous avons tous nos marteaux, mais j’ai trouvé que le script de fusion des sites DIscourse ratait un tas de cas limites (je ne me souviens plus exactement lesquels maintenant). Et puis vous avez deux transitions à faire.

Je lancerais probablement le script SMF par-dessus le site Discourse existant. Quand je l’ai fait, j’ai apporté des modifications pour faire des choses comme voir que les catégories sont fusionnées et que les utilisateurs sont alignés entre les sites. Si vous vous y connaissez un peu en programmation, les scripts sont généralement assez faciles à comprendre, même si vous ne connaissez pas Ruby.

2 « J'aime »

Eh bien, je n’ai pas encore commencé.
Mais, ma question était 1. si ce script fonctionne avec SMF2.1, et 2. s’il est possible de fusionner un SMF dans une instance Discourse existante.

J’avais complètement raté ça. Merci pour votre réponse. Je pense que c’est comme ça que ça devrait fonctionner.

@pfaffman
Je n’ai pas besoin de tout de SMF, juste des messages, des sujets et des utilisateurs.

Peut-être que je devrai bricoler pour que ça fonctionne.

C’est à peu près tout ce qui est importé. Il est probablement plus facile d’importer les catégories que de ne pas le faire.

Oui. Et il n’y a aucun moyen de savoir quelle quantité de travail il y aura avant que vous n’essayiez.

Je pense que je vais suivre les étapes suivantes :

  1. Prendre mon SMF et déplacer chaque sujet (avec les messages) dans une catégorie, puis faire une sauvegarde de la base de données.
  2. Installer un Discourse vierge et importer la sauvegarde SMF (j’espère que le script d’importation fonctionnera avec SMF 2.1).
  3. Supprimer et réinstaller Discourse, puis télécharger ma sauvegarde Discourse avec les paramètres et les messages.
  4. Fusionner les deux forums Discourse en un seul avec le guide que @supermathie a lié.

J’espère que cela fonctionnera, sinon je devrai payer quelqu’un pour le faire à ma place.