renato
(Renato Atilio)
2
问题是类别已预先填充了吗?如果是这样,您可能正在寻找“默认作曲家类别”网站设置。
4 个赞
是的,就是这个问题。
我重置了该设置,现在它按预期工作。谢谢!
我注意到当该设置被设为“无分类”时,用户无法点击输入,并且会显示一条消息要求选择分类,但有时用户不会立即阅读文本。您是否知道是否可以在用户点击消息区域之前显示一个“弹出窗口”,要求他们先选择一个分类?
编辑:在尝试了 Claude 和 ChatGPT 提供的许多选项后,我最终只是删除了“禁用”属性。这样用户仍然可以点击并输入他们的消息,但当没有选择分类并且他们尝试提交时,他们会看到要求选择分类的红色/橙色错误。实际上,我认为这是一种更好的行为。
对于其他尝试做同样事情的人,这是我添加到新组件 Unlock Composer 的 <thead> 选项卡中的 Javascript:
<script type="text/discourse-plugin" version="0.8">
const observer = new MutationObserver(() => {
const textarea = document.querySelector(".d-editor-input[disabled]");
if (textarea) {
textarea.removeAttribute("disabled");
textarea.setAttribute("placeholder", "Select a category before submitting");
textarea.style.cursor = "text";
}
});
observer.observe(document.body, { childList: true, subtree: true });
</script>
我不是开发人员。这只是 ChatGPT 提出的建议,而且有效。如果有人知道如何改进这一点,请分享。
当我点击 New Topic 时,它显示如下:
您可以看到没有默认类别。现在,我可以输入我的消息(与默认行为不同,默认行为会锁定消息区域),即使没有选择类别:
如果我尝试提交,我会看到这个:
希望这有帮助。
1 个赞
我认为这通常是默认行为。
您是否设置了任何主题模板?
不客气!
我刚让 ChatGPT 看看有没有办法能让脚本更简化一些,它删除了第一行,是关于 API 的。我已将最终脚本更新到我的帖子中,供您参考。
1 个赞
没有模板。
但我认为这不是默认行为,因为即使是原始占位符也说“在此处键入前选择一个类别”,光标也会变成一个带有🚫符号的箭头。除非我选择类别,否则它不允许我单击和键入。
如果您的某个类别设置了主题模板,我也会有同样的预期。如果没有设置,它应该允许您在设置类别之前进入撰写器文本区域。当使用主题模板时,它会阻止这样做,以防止用户先在撰写器中键入内容,然后再选择类别,从而意外绕过该模板。
我刚刚在我自己的网站上快速测试了一下,在没有 default category(默认类别)或主题模板的情况下,我可以进入撰写器区域,直到我选择类别才会被阻止。
2 个赞
奇怪……我刚禁用了我创建的组件,又试了一次,现在可以输入了。它没有被锁定 
是不是在我将其设置为 (no category) 之后出现的某种缓存问题?服务器本身的缓存,因为在 Chrome 和 Firefox 上,使用不同的用户账户,我都遇到了相同的行为。我正在使用 Cloudflare,并且我注意到有时我的论坛会出现与 Cloudflare 缓存相关的问题。同样,我不是专家,所以只是猜测……
好的,我好像说得太早了……
几分钟后,它又恢复了之前的行为。它被锁定了。当我检查编辑器时,我看到了这个:
我想我还是继续使用组件吧。
2 个赞
如果你能让它按你想要的方式工作,那就太棒了 
出于好奇,如果你安装了数据浏览器插件,能否运行这个来查看它显示的内容:
SELECT id as category_id, topic_template
from categories
我刚刚在另一个网站上测试了这个(碰巧该网站的默认区域设置为德语),我们发现“未分类”伪类别中添加了一个隐藏的模板,这似乎导致了该网站上出现相同的行为。
我刚注意到在 Obsidian 论坛上,行为也是一样的。它会被锁定,直到我选择一个类别,所以这可能是新的行为?
我没有数据浏览器插件,抱歉。
我不这么认为。
在我测试过的两个最近更新的站点上,行为都和我预期的相同(没有 默认类别 或主题模板 = 在不先选择类别的情况下自由输入)。
我们无法弄清楚德语区域设置站点上的“未分类主题模板”来自哪里。出于任何原因偷偷自动添加一个会破坏预期功能而无人意识到。
你的站点有吗?(如果你能分享你的 默认区域设置 那也很有用)
/c/uncategorized/edit/topic-template
更新: 作为数据浏览器的替代方案,你也可以将你的管理员日志过滤为“主题模板”,看看里面是否有任何额外信息。
(我也会在这里添加 Moin 在下面分享的过滤链接)
/admin/logs/staff_action_logs?filters=%7B%22subject%22%3A%22topic_template%22%7D
这是一个很棒的插件,我强烈推荐它。 
3 个赞
Moin
16
我认为在界面中筛选该选项有点困难,因为您只能按“操作”筛选,而不能按“主题”筛选。对于“更改类别设置”操作可能会有很多日志。但是,您可以在 URL 中添加主题筛选器:/admin/logs/staff_action_logs?filters=%7B%22subject%22%3A%22topic_template%22%7D
2 个赞
奇怪的是,Obsidian 的论坛和我的一样。真是奇怪……
这里也是空的。实际上,我认为我根本没有任何模板。
1 个赞
感谢 Lilly(也感谢 @JammyDodger)分享了这款插件。我一定会去看看的。
1 个赞
我认为如果你仍然好奇的话,应该可以在 try.discourse.org 上看到默认行为。 不,我弄错了。Try 设置了默认分类。
我希望挖掘出那些被遗忘的。
但如果“未分类”中没有自动添加的,那么我认为这可以排除潜在的 bug,那就好了。
还有员工日志(使用 Moin 分享的链接),但你似乎对你的解决方法很满意,所以我将停止向你索取更多信息。