this.model contient les données du sujet telles que l’id, le titre, etc. Vous pouvez l’utiliser.
Par exemple, pour autoriser les id de sujet 90 ou 38, vous écririez :
<script type="text/x-handlebars" data-template-name="connectors/topic-area-bottom/custom-html">
{{#if (or (eq this.model.id 90) (eq this.model.id 38))}}
<div class="banner-control">
<!-- Le contenu HTML unique va ici -->
</div>
{{/if}}
</script>
Cependant, je vous encourage à utiliser le Theme CLI et à travailler avec des fichiers séparés.
Il sera difficile d’ajouter plus de conditions ou d’avoir une logique ici. Il serait possible d’utiliser registerConnectorClass, mais c’est déprécié.
La méthode moderne consiste à utiliser renderInOutlet avec un composant Glimmer, par exemple GitHub - discourse/discourse-custom-header-links.
Vous dites que vous voulez rendre dans un outlet spécifique :
Vous avez le template défini ici. Notez this.shouldShow
https://github.com/discourse/discourse-custom-header-links/blob/main/javascripts/discourse/components/custom-header-links.hbs#L1
Ensuite, vous pouvez ajouter votre logique ici pour indiquer au composant s’il doit être affiché ou non :
https://github.com/discourse/discourse-custom-header-links/blob/main/javascripts/discourse/components/custom-header-links.js#L5-L7
J’espère que cela vous aidera. Faites-moi savoir si vous avez besoin d’aide supplémentaire. ![]()