ID темы как переменная?

Создать пользовательский компонент, который добавляет это к соответствующим сообщениям, будет проще, чем заполнять шаблон.

Если вы отредактируете код вашей темы в разделе admin > темы и компоненты… и добавите этот код во вкладку JS, то с некоторыми доработками вы получите нужный результат:

import { apiInitializer } from "discourse/lib/api";
import Component from "@glimmer/component";

class TopicIdentifier extends Component {
  get topicId() {
    return this.args.post?.topic?.id;
  }

  get shouldShow() {
    const firstPost = this.args.post?.post_number === 1; // первое сообщение в теме
    const desiredCategories = [45, 3]; // список ID категорий, в которых должно отображаться это (через запятую)
    const isInCategory = desiredCategories.includes(
      this.args.post?.topic.category.id
    );

    return firstPost && isInCategory;
  }

  <template>
    {{#if this.shouldShow}}
      <!-- вы можете отредактировать содержимое ниже, {{this.topicId}} — место, куда будет вставлен ID темы -->
      ID этой темы:
      {{this.topicId}} 
      <!-- вы можете отредактировать содержимое выше -->
    {{/if}}
  </template>
}

export default apiInitializer((api) => {
  api.decorateCookedElement((element, helper) => {
    const wrapper = document.createElement("div");
    wrapper.className = "custom-topic-id";
 
    helper?.renderGlimmer(
      wrapper,
      <template><TopicIdentifier @post={{helper.model}} /></template>
    );

    element.appendChild(wrapper);
  });
});

ID категории можно найти в её URL, чтобы настроить desiredCategories. Например, категория поддержки здесь, на Meta, имеет ID 6.

Вы можете добавить CSS-стили, чтобы оформить это так, как вам нужно, во вкладке CSS… например:

.custom-topic-id {
  display: inline-block;
  background: yellow;
}