Intégrer les commentaires Discourse sur un autre site web via Javascript

Comme @codinghorror, j’utilise également cette intégration Discourse avec Ghost en utilisant la configuration par défaut, qui utilise l’URL absolue en tant que discourseEmbedURL.

Il y a environ une semaine, j’ai décidé de modifier le routage de mon blog Ghost afin que les articles dont les URLs ressemblent à https://engineerworkshop.com/2020/02/20/how-to-set-up-wireguard-on-a-raspberry-pi/ soient redirigés vers https://engineerworkshop.com/blog/how-to-set-up-wireguard-on-a-raspberry-pi/, https://engineerworkshop.com/blog/how-to-set-up-wireguard-on-a-raspberry-pi/ devenant ainsi le nouveau permalien.

Le Problème

Vous pouvez probablement anticiper le problème que cela crée : le discourseEmbedURL est défini sur l’ancienne URL, et lorsque le script d’intégration est appelé, qui possède désormais une URL différente, un nouveau post de commentaire est créé dans Discourse.

Tentative de Solution (qui a échoué)

Avant cela, j’avais anticipé ce problème et j’avais cru être malin en utilisant un motif regex avec remap pour corriger les URLs : rake posts:remap["[0-9]{4}\/[0-9]{2}\/[0-9]{2}","blog",regex].

Bien que cela ait « un peu » fonctionné, partout où l’URL était utilisée dans le post de commentaire original sur Discourse, malheureusement, lorsque j’ai chargé les articles du blog, de nouveaux sujets de commentaire ont été créés dans Discourse.

Finalement, j’ai simplement rechargé chaque article de mon site et transféré les commentaires des anciens sujets vers mes nouveaux sujets, en supprimant les originaux (je sais, je sais). Évidemment, supprimer des pages est mauvais pour le référencement, sans parler de l’expérience utilisateur.

Ma Question

Je suppose que la raison pour laquelle ma tentative de correctif regex n’a pas fonctionné est que le sujet Discourse est en quelque sorte lié à l’URL dans le backend. (J’admets volontiers ignorer la structure de données de Discourse). Pour les connaissances futures, et pour toute autre personne qui pourrait tenter de faire de même à l’avenir, existe-t-il un moyen de remapper un sujet Discourse vers une nouvelle URL d’article de blog ?

Merci d’avance !

5 « J'aime »