我有一个特定的用例,我不确定 Discourse 是否是合适的媒介。
我想围绕 5000-7000 部漫画托管一个讨论平台。但是,我不想将所有讨论都放在一个主题下,因为很难追踪同一部漫画下的不同讨论主题。因此,我曾想过为每部漫画创建一个“类别”,并在其下可以有单独的主题。此外,我读到这可能会给服务器和客户端都带来负担。
请注意,导航不是问题,每部漫画都有一个社区成员知道的唯一标识符,因此没有人会浏览类别。用户只需键入标识符即可找到类别。
是否有更好的方法来实现类似的功能?使用标签会有帮助吗?
我有一个特定的用例,我不确定 Discourse 是否是合适的媒介。
我想围绕 5000-7000 部漫画托管一个讨论平台。但是,我不想将所有讨论都放在一个主题下,因为很难追踪同一部漫画下的不同讨论主题。因此,我曾想过为每部漫画创建一个“类别”,并在其下可以有单独的主题。此外,我读到这可能会给服务器和客户端都带来负担。
请注意,导航不是问题,每部漫画都有一个社区成员知道的唯一标识符,因此没有人会浏览类别。用户只需键入标识符即可找到类别。
是否有更好的方法来实现类似的功能?使用标签会有帮助吗?
长话短说:是的,这是唯一的方法。
是否可以强制每篇帖子都使用标签?因为理想情况下,论坛不应包含任何不属于任何漫画的内容。
我能否以编程方式填充标签?我曾想过为每个标签创建一个主题(我想这是创建标签的唯一方法),但我找不到多少关于过程生成主题的信息。
我在我的桌游社区就是这么做的:每当有一个桌游被添加到我的数据库(或在我的数据库中重命名)时,都会创建一个/更新一个标签和两个自定义主题。
我没记错的话,在我做这个的时候,并没有一个单独创建标签的接口(但你可以在创建主题时添加一个新标签),但我能够使用批量标签上传来完成这个任务。
类似这样:
const formData = new FormData();
formData.append("file", Buffer.from("the-tag-name,an-optional-tag-group"), {
contentType: "text/csv",
filename: "tags.csv",
});
const { data } = await axios.post(`${process.env.DISCOURSE_URL}/tags/upload.json`, formData, {
headers: {
...formData.getHeaders(),
"Api-Key": process.env.API_KEY,
},
});
好的,能看看 tags.csv 的样子吗?
我正在探索一个类似的用例,其中一个标签组中的标签是必需的,并且实际上被用作顶级结构(取代了类别)。
目前,标签仅在其名称存储在数据属性中。如果它们的组也存储在属性中,那将是很好的。这样我们就可以在用户体验中区分标签组。
编辑:为此发布了一个功能请求:Add a data-tag-group attribute for tags
抱歉问了很多问题,但我想了解另一个与标签和主题相关的功能。
是否可以将主题“固定”到特定标签,以便在选择该标签时,用户在主题列表中首先看到的是固定的主题?
您无法从默认的置顶模态中将主题置顶到标签。我知道的两种选择:
第二个选项看起来正是我想要的解决方案。是否可以通过任何 API 以编程方式为每个标签设置这些横幅主题?
我不知道该怎么做。有一点需要注意,它似乎渲染速度有点慢。我不是一个足够好的开发者来解释甚至理解原因,但如果将其用于每个页面,可能会减慢您的论坛速度。
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.