Après une migration personnalisée, de nombreux permaliens pointaient vers le premier message d’un sujet au lieu de l’URL du sujet lui-même.
par exemple, les permaliens pointant vers https://forum.example.com/t/example-topic/123/1
au lieu de https://forum.example.com/t/example-topic/123
Vérification
Un forum Discourse est affecté s’il existe des enregistrements pour cette requête SQL :
SELECT permalinks.*,
posts.id,
posts.topic_id,
posts.post_number
FROM permalinks
LEFT JOIN posts
ON posts.id = permalinks.post_id
WHERE permalinks.post_id IS NOT NULL
AND posts.post_number = 1
LIMIT 20;
Correction rapide
Cela modifie les permaliens pour qu’ils pointent directement vers le sujet, s’ils pointaient à l’origine vers le premier message du sujet.
UPDATE permalinks
SET topic_id = posts.topic_id,
post_id = NULL
FROM posts
WHERE permalinks.post_id = posts.id
AND permalinks.post_id IS NOT NULL
AND posts.post_number = 1;
Cela pourrait être une bonne routine de nettoyage à exécuter à la fin des scripts de migration.