您好,
在用户无法创建帖子的分类页面上,我使用一个带有关于信任等级的帖子链接的横幅文本。

横幅中的 HTML 工作正常
但是点击 + New Topic 时,模态框无法处理 HTML。
如果模态框也能像之前使用的 bootbox 模态框一样处理 HTML,那就太好了。
谢谢 ![]()
您好,
在用户无法创建帖子的分类页面上,我使用一个带有关于信任等级的帖子链接的横幅文本。

横幅中的 HTML 工作正常
但是点击 + New Topic 时,模态框无法处理 HTML。
如果模态框也能像之前使用的 bootbox 模态框一样处理 HTML,那就太好了。
谢谢 ![]()
你好 Tim,
谢谢你的建议
我用 modifyClass 做了更改,但我认为将此对话框设为 htmlSafe 在核心中是合理的更改,因为类别横幅也处理 HTML。
import { htmlSafe } from "@ember/template";
export default {
name: "dialog-html-support",
initialize() {
withPluginApi("0.8.7", (api) => {
api.modifyClass("component:d-navigation", {
pluginId: "dialog-html-support",
actions: {
clickCreateTopicButton() {
if (this.categoryReadOnlyBanner && !this.hasDraft) {
this.dialog.alert({
message: htmlSafe(this.categoryReadOnlyBanner),
});
} else {
this.createTopic();
}
},
},
});
});
},
};
嗨,团队!
我希望在下面的设置中能够使用链接。在我的例子中,任何人都可以查看一个类别;但是,你需要属于一个组才能创建和回复主题。
“当用户无法在此类别中创建主题时的横幅文本:”
所以我尝试过使用文本,例如:
要参与,您需要“应用组链接”。
不幸的是,此设置仅支持纯文本,不支持链接。团队能否考虑更改此设置?
我已将您的帖子移至此主题,以便集中处理对此项更改的请求。![]()
谢谢 Jammydodger!
有时很难确定在哪里发帖最好。Discourse 规模庞大,这并非坏事;但有时会让相对较新的我们感到畏惧。
然而,这正是你们出色的团队和社区经常能帮助大家的地方!
嗨 Don 和 @TimJensen 吗?这个解决方案也能修复我下面示例中的 markdown 吗?使用:
要参与该类别,您需要 [Apply](/g/groupname/members)。
代码也需要创建一个主题组件,我猜。我需要把它放在哪个部分?
编辑:
嗯……目前添加一个 js 文件可能有点超出我现在的技能水平。
我需要一点指导才能成功完成这个任务。
您好 Dan,
横幅支持 HTML。此主题是关于单击“创建主题”按钮时显示的对话框。
不,它支持 HTML。您的示例将如下所示:![]()
要参与该类别,您需要 :a href="/g/groupname/members">申请</a>。
这应该可以在 Header 中使用,以支持对话框中的 HTML。![]()
<script type="text/discourse-plugin" version="0.8">
const { htmlSafe } = require("@ember/template");
api.modifyClass("component:d-navigation", {
pluginId: "dialog-html-support",
actions: {
clickCreateTopicButton() {
if (this.categoryReadOnlyBanner && !this.hasDraft) {
this.dialog.alert({
message: htmlSafe(this.categoryReadOnlyBanner),
});
} else {
this.createTopic();
}
},
},
});
</script>
好的,所以我只需要使用 HTML 而不是 Markdown。
那么,如果有人尝试在类别中回复和/或创建新主题,横幅就会生效吗?如果我理解正确的话,您的要求与主题组件的新主题按钮有关?
使用您的 JavaScript,您是否只会创建一个新的主题组件并上传 *.js 文件? CSS 等部分是否还需要其他东西?或者它就能正常工作?
如果我想在链接按钮之前显示对话框,我需要编写什么代码?抱歉,我还在学习中。
只需在管理员中创建一个新组件,然后将上面的代码粘贴到 Common > Header 部分。它将允许在单击“新建主题”按钮时处理模态中的 HTML。 ![]()
演示
无代码
正如您所见,横幅支持 HTML,但当我单击“新建主题”按钮时,模态(对话框)不支持它。
有代码
我不确定您说的
是什么意思
感谢您解释在哪里添加 HTML 修复代码。
实际上,您的第一个视频完美地回答了我的问题,让我豁然开朗。链接按钮之前的对话框文本与 Markdown 程序相同。(第一个视频显示了在未放置代码时失败的情况)我也在您的代码示例中错过了它 ![]()
例如
参与“markdown”
参与“html”
非常感谢您帮助我开阔思路。
Dan
抱歉延迟了,各位,这应该可以解决问题:FIX: Allow HTML in category read-only dialog by pmusaraj · Pull Request #20349 · discourse/discourse · GitHub
此主题已在 2 天后自动关闭。不再允许回复。