Как добавить уникальный HTML-контент под телом темы в форуме Discourse для конкретных тем

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">
      <!-- Уникальный HTML-контент размещается здесь -->
    </div>
  {{/if}}
</script>

Однако я рекомендую использовать Theme CLI и работать с разделёнными файлами.

Добавлять дополнительные условия или логику таким способом будет сложно. Можно было бы использовать registerConnectorClass, но этот метод устарел.

Современный подход — использование renderInOutlet вместе с компонентом Glimmer, например, как в GitHub - discourse/discourse-custom-header-links · GitHub.
Вы упомянули, что хотите рендерить в конкретный outlet:

Шаблон определён здесь. Обратите внимание на 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

Надеюсь, это поможет. Дайте знать, если потребуется дополнительная помощь. :+1: