this.model には、id、title など、トピックデータが含まれています。それを使用できます。
たとえば、トピック ID 90 または 38 を許可するには、次のように記述します。
<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">
<!-- Unique HTML content goes here -->
</div>
{{/if}}
</script>
ただし、Theme CLI を使用し、分割ファイル で作業することを推奨します。
ここにさらに条件を追加したり、何らかのロジックを記述したりするのは困難です。registerConnectorClass を使用することは可能ですが、非推奨です。
最新の方法は、renderInOutlet を Glimmer コンポーネントと共に使用することです。例: GitHub - discourse/discourse-custom-header-links
特定ののアウトレットにレンダリングしたいとのことですね。
テンプレートはここで定義されています。this.shouldShow に注目してください。
https://github.com/discourse/discourse-custom-header-links/blob/main/javascripts/discourse/components/custom-header-links.hbs#L1
次に、ここでコンポーネントを表示するかどうかを判断するロジックを追加できます。
https://github.com/discourse/discourse-custom-header-links/blob/main/javascripts/discourse/components/custom-header-links.js#L5-L7
お役に立てば幸いです。追加のサポートが必要な場合はお知らせください。![]()