Comment récupérer programmatiquement l external_id d un sujet

Je n’avais jamais remarqué cela auparavant. Je cherchais quelque chose de similaire il y a quelques années pour associer des identifiants de publication WordPress à des sujets Discourse.

L’ external_id du sujet ne sera renvoyé comme propriété sur le client que si le sujet a un external_id, donc si le sujet n’en a pas, vous n’obtiendrez pas une valeur null. Cela fonctionne pour moi pour les sujets qui ont un external_id :

<script type="text/discourse-plugin" version="0.11.0">
api.onPageChange (() => {
    const c = api.container.lookup("controller:topic");
    if (c) {
        const m = c.get("model");
        if (m && m.hasOwnProperty('external_id')) {
        console.log("l'external_id est ", m.external_id);
        }
    }
});
</script>