有一段时间我借用了 @ChrisBeach 的 CSS 代码片段,因此我将其转换为一个主题组件,结果请见:
功能说明
当阅读私信时,它会改变页面的外观:
- 顶部横幅颜色(带渐变),
- 字体颜色,
- 背景颜色,
- 标题颜色,
- 并在回复后添加一些文本。
所有这些更改都是可选的,可以通过各自的开/关设置进行切换。主要的“私信”颜色也可以通过设置进行修改。若要调整各种颜色,请编辑 CSS 文件的顶部部分。
有一段时间我借用了 @ChrisBeach 的 CSS 代码片段,因此我将其转换为一个主题组件,结果请见:
当阅读私信时,它会改变页面的外观:
所有这些更改都是可选的,可以通过各自的开/关设置进行切换。主要的“私信”颜色也可以通过设置进行修改。若要调整各种颜色,请编辑 CSS 文件的顶部部分。
谢谢你,@oca!
我发现这仅适用于颜色名称,而不适用于十六进制颜色代码。这使得匹配颜色调色板变得棘手。通过查看 CSS 和颜色混合的方式,我猜测要修改这一点并不容易。有人能证明我错了吗?
看起来这是一个主题,而不是主题“组件”,但如果我理解有误,请纠正我。
我已经在用一个完全自定义的主题,而且同一时间只能使用一个主题,不过您可以允许用户在不同主题之间切换……是这样吗?
据我理解,主题组件允许您将组件应用到当前激活/主要/默认的主题上。至少其他主题组件对我来说就是这样工作的。在主题组件中,有一个复选框写着“在这些主题中包含此组件”,这允许您将组件应用到您的默认主题上。
是否有可能将此内容转换为组件,以便我可以保持我的主要/默认主题处于激活状态,同时为私信(DM/PM)启用这些自定义设置?
我记得在我们做出区分主题和主题组件的变更时,曾向 Meta 上所有的主题组件提交过 PR。
我认为这个案例被遗漏了,因为它最初是对某个其他话题的回复,后来被移到了 #theme 分类下的独立话题中。
@oca 你只需在这个“主题”中添加一行,即可使其作为主题组件运行。你需要在组件的 about.json 文件中添加:
"component": true
如下所示:
{
"name": "Private messages with color",
"about_url": "https://framagit.org/oca/discourse-theme-colored-private-messages ",
"license_url": "https://framagit.org/oca/discourse-theme-colored-private-messages/blob/master/LICENSE",
+ "component": true,
"assets": {
"asset-variable": "assets/background.svg"
}
}
完成后,它应该就能像其他组件一样正常工作,之后我们就可以为该话题添加 theme-component 标签。
在此期间,@Rhidian 教了我一个新技巧:你可以使用“转换”按钮将主题转换为组件,反之亦然…
我也很希望能在这里使用 HEX 颜色代码!
完成!
感谢提示。
我会查看一下。
既然我们现在已经可以这样做,将其添加为组件参数或许是个不错的选择。
不敢保证一定能实现,我还在努力学习这方面的内容。
很好 ![]()
我已为这个主题添加了标签。方便的时候,能否请在该主题的首帖中添加一两张截图?不着急,但这有助于更直观地看到该组件带来的变化。
感谢你的支持!
但对于那些制定 JSON 规范的人来说,就不必感谢了……
这是更改私信/悄悄话颜色的方法吗?
我认为可以做得更好。
我使用 个人消息气泡 已经有一段时间了,但它已被添加为核心功能。
现在那个组件还能正常工作吗,因为私信气泡已经集成到核心了?我记得之前有人遇到过一些冲突 Personal Message Bubbles - #93 by AntiMetaman