nathank
(Nathan Kershaw)
1
简单描述
此主题组件使您能够更明显地标识 Wiki 帖子(以及共享编辑帖子)。
Wiki 和共享编辑是 Discourse 的强大功能,但许多用户并不熟悉这一概念,并觉得用户界面略显隐晦。此组件使其一目了然,封装了来自 Change the style of a wiki post 的内容。
截图
详细说明
安装此组件后,您可以控制 Wiki 帖子的背景颜色,并在帖子右上角的历史记录/编辑图标旁添加一些文本。
它是 @pacharanero 的 discourse-wikified-post-background-color 的一个分支,整合了来自 Change the style of a wiki post 的内容,并复用了 @Rhidian 在 Personal Message Bubbles 中的代码。
设置
Wiki 帖子背景颜色
Wiki 帖子的背景颜色可设置为您喜欢的任何颜色。默认值为 ‘highlight’,但您可以使用以下任一选项:
- 选择方案颜色(即 primary、secondary、tertiary 等)效果最佳,因为这些颜色能自动适配深色模式。
- CSS 中认可的颜色名称(例如 blue、red、yellow、black 等)
- HTML 颜色代码(例如 #effbfb 等)
共享编辑背景颜色
您可以为共享编辑帖子选择相同的颜色选项之一(参见 共享编辑插件)
Wiki 添加文本
这会在帖子的右上角添加一小段绿色文本(默认为 Wiki Post):

这是动态的,如果最近有编辑,它会随历史记录图标的颜色一起变化(这是一个意外但令人愉快的效果):

如果您不想要任何文本,请删除设置中的文本并保存。
共享编辑添加文本
当是共享编辑帖子时显示的文本。该文本使用您调色板中的 Danger 颜色。

路线图
- 自动为带有 ‘wiki’ 标签的主题添加标签
请作为对此帖子的回复提出建议。
26 个赞
太棒了 @nathank
我将归档旧的 wikified 帖子背景颜色仓库,转而采用你这个新版本,它增加了更多功能。
4 个赞
Zup
3
有人收到此错误吗?
错误:未定义的变量:“$Shared-edits-hide”。在 common.scss 的第 42 行 >> @if ($Shared_edits_hide == "Yes"){ -----^
nathank
(Nathan Kershaw)
4
我无法重现该问题,也看不出代码中有任何明显的问题。您能提供更多信息吗?
1 个赞
Zup
5
这是因为我将“共享编辑隐藏”设置为“否”。错误出现在 TC 设置中。将其设置为“是”后,错误消失了。
nathank
(Nathan Kershaw)
6
在最新的 Discourse Beta 中,无论设置为“否”还是“是”,我都无法复现。您使用的是旧版 Discourse 吗?抱歉,我没有对其进行任何版本控制。
1 个赞
Zup
7
抱歉,我的问题——有点过时了,是的。直到你提到它,我才在最近更新后再次进行测试。谢谢。
1 个赞
nathank
(Nathan Kershaw)
9
已对默认背景颜色进行微调,因为我很难看到 @提及。
另外,共享编辑的背景颜色现在默认为 tertiary-very-low。
1 个赞
volanar
(Volanar)
10
一个出色的组件。但它只在主题页面上提高了可见性。是否可以修改它,以便在类别页面、主题列表“最近”、“未读”等页面上显示维基图标?
nathank
(Nathan Kershaw)
11
好建议,我很确定这是可行的(欢迎提交 PR!)。
我通过在我的实例中简单地将帖子标记为 #wiki 来解决这个问题。当然,这是半自动的——你可以通过高级搜索来识别 wiki 帖子/主题。它还有一个额外的好处,就是可以通过侧边栏导航轻松发现它们。
我曾想过将 wiki 帖子的自动标记作为此组件的一部分(或按你建议的那样),但它并没有给我带来足够的困扰,让我有时间去尝试,我很抱歉。
2 个赞
Canapin
(Coin-coin le Canapin)
12
我在 2021 年在这里问过这个问题:Add an icon in front of wikis in the topic list?
答案是:
#功能请求:
1 个赞
thoka
(Thomas Kalka)
13
我正在寻求有关如何将背景颜色调整为(自动)暗模式的建议。
目前,我为背景选择的明亮浅色在暗模式下会导致帖子难以阅读。
是否可以扩展调色板并进行一些颜色计算,以定义 wiki 和 pad 的背景颜色?
thoka
(Thomas Kalka)
14
您可以使用标签来标记“wiki”主题。
据我回忆,标签可以通过 CSS 进行样式设置。
您还可以获得它们的列表/向下钻取选项的额外好处。
此外,可以通过插件自动将 wiki 标签添加到包含 wiki 的主题中。
nathank
(Nathan Kershaw)
15
这就是我推荐使用 Scheme 颜色的原因:
如果您想在颜色方面不走寻常路,您将需要找到一种巧妙的方法来处理暗模式。
一个不错的功能是能够指定暗模式颜色。我会在有空时研究一下。
1 个赞
thoka
(Thomas Kalka)
16
当然。但这些颜色对于背景来说太显眼了。
因此,我曾设想过将10%的方案颜色与90%的背景混合。我猜前端没有SASS(或类似的东西)。
但是,一些CSS魔法比如这个会起作用吗?
更新:rgba(0, 255, 0, 0.1)在暗模式和亮模式下效果都相当好。
Canapin
(Coin-coin le Canapin)
17
SASS 函数在自定义主题部分可用,它会在您保存修改时进行编译。不过,您不能在主题或 CSS 变量上使用 SASS 函数。
如果您想在配色方案的颜色上使用 SASS 函数,则必须使用相应的 SASS 变量。
可以工作 
body {
background: darken($secondary, 10%);
}
不可以工作 
body {
background: darken($my_theme_variable, 10%);
}
不可以工作 
body {
background: darken(var(--secondary), 10%);
}
而且,我认为您链接中描述的内容应该可以工作。 
3 个赞
nathank
(Nathan Kershaw)
18
也许这值得一试。这是我(供我自己参考)使用 SASS mix() 函数的指南: