안녕하세요, 다시 오신 것을 환영합니다!
화면이 빈 것으로 보이면 오류가 있는 것입니다. helper에는 find가 존재하지 않습니다.
보통 브라우저 콘솔(F12)에서 이를 확인할 수 있습니다.
아래와 같은 코드를 원하시는 것 같습니다:
api.decorateWidget('post:before', (helper, args) => {
if (helper.widget.model.topic.category_id === 51) {
return helper.h("div.disclaimer", settings.MY_DISCLAIMER)
}
});
또는 원시 HTML을 사용하는 경우:
const RawHtml = require("discourse/widgets/raw-html").default;
api.decorateWidget('post:before', (helper, args) => {
if (helper.widget.model.topic.category_id === 51) {
return new RawHtml({html: `<div class="container">${settings.MY_DISCLAIMER}</div>`})
}
});
이 h 헬퍼가 어떻게 작동하는지 설명하는 이 게시물을 읽을 수 있습니다.
요약된 콘텐츠(cooked content) 앞에 HTML을 추가하려면 다음을 수행할 수 있습니다:
api.decorateWidget('post-contents:before', (helper, args) => {
const { topic } = helper.widget.findAncestorModel();
if (topic && topic.category_id === 51) {
return helper.h("div.disclaimer", settings.MY_DISCLAIMER);
}
});