mirror of
https://github.com/bs-community/blessing-skin-manual.git
synced 2025-02-05 10:29:41 +08:00
Create ui-text.md
This commit is contained in:
parent
1e8a27be02
commit
49f3c3f156
67
man/ui-text.md
Normal file
67
man/ui-text.md
Normal file
@ -0,0 +1,67 @@
|
||||
# 自定义 UI 文本
|
||||
|
||||
从 Blessing Skin 5.0.0 开始,您可以在管理面板中的「多语言」页面自定义 Blessing Skin 上的 UI 文本(同时也包括后端返回的消息文本)。
|
||||
|
||||
## 理解概念
|
||||
|
||||
对于每一条文本,都有三个属性,分别是「分组」、「键」、「文本」。
|
||||
|
||||
以用户仪表盘中关于积分系统介绍的那段文本为例,在 Blessing Skin 内部,是通过调用 `trans('user.score-intro.introduction')` 来获取该文本的。
|
||||
|
||||
### 分组
|
||||
|
||||
上面的整个 `user.score-intro.introduction` 可被小数点分成三段,其中第一段就是「分组」。以刚刚的文本为例,这里的分组就是 `user`。
|
||||
|
||||
实际上,它是 Blessing Skin 目录下 `resources/lang/{xxx}/`(其中 `xxx` 为语种,如 `en` 或 `zh_CN`)下的文件名(不含扩展名,即 `.yml`)。
|
||||
例如,上面提到的那条文本就位于 `resources/lang/{xxx}/user.yml` 文件内。
|
||||
该目录下还有 `admin.yml`、`skinlib.yml` 等文件,所以相应地,它们的「分组」就是 `admin`、`skinlib`,依此类推。
|
||||
|
||||
### 键
|
||||
|
||||
还是以 `user.score-intro.introduction` 为例。键就是除了「分组」后剩下的部分。
|
||||
所以对于这条文本,它的键就是 `score-intro.introduction`。
|
||||
|
||||
但要注意,在语言文件(YAML 文件)里,文件结构并不是像这个键那样为扁平化结构,而是树状结构,是嵌套的。
|
||||
打开 `resources/lang/{xxx}/user.yml` 文件,我们就可以发现,该条文本位于 `score-intro` 块中的 `introduction` 条。
|
||||
|
||||
### 文本
|
||||
|
||||
就是该条目的具体文本内容。在大多数情况下,文本内容只能是单行的。
|
||||
|
||||
## 添加新条目
|
||||
|
||||
在页面右方的表单可以添加新的条目,填写好「分组」、「键」、「文本」并提交后,如果该条文本在 Blessing Skin 有定义过,那么刷新页面即可生效。
|
||||
|
||||
以修改「签到」按钮的文本为例。该条文本的分组是 `front-end`,键是 `user.sign`,文本则按您喜欢的去写,如「点此获取积分」。
|
||||
提交之后,刷新 `/user` 页面,就能看到按钮文本被更新。
|
||||
|
||||
如果需要修改其它语种下的文本,请先切换站点语言。例如要修改英文下的某条文本,就需要先切换到英文页面,再去修改。
|
||||
单单修改某一语种下的文本,不会影响其它语种下的内容。
|
||||
|
||||
## 修改现有条目
|
||||
|
||||
在「多语言」页面的列表里,选择想要修改的条目,单击「修改」按钮,即可在弹出的提示窗口内对文本内容进行修改。
|
||||
|
||||
如果需要修改其它语种下的文本,请先切换站点语言。
|
||||
|
||||
注意,只能修改该条目的文本内容,不能修改分组或键。
|
||||
|
||||
## 删除条目
|
||||
|
||||
当您想将某条文本恢复为 Blessing Skin 的默认值,将该条目删除即可。
|
||||
|
||||
::: warning
|
||||
注意:删除某条目时,会同时删除该条目在所有语种下的内容。
|
||||
:::
|
||||
|
||||
## 被 JavaScript 渲染的文本
|
||||
|
||||
由于 Blessing Skin 的不少页面都使用 Vue.js 进行渲染,因此它们无法直接获取 `admin.yml`、`user.yml`、`skinlib.yml` 等语言文件的内容。
|
||||
对于这部分的语言文本,它们均为于 `front-end.yml`。上面提到的「签到」按钮就属于这种情况。
|
||||
|
||||
## 一点点技巧
|
||||
|
||||
由于 Blessing Skin 中存在大量的文本,对于多数用户也难以清楚某条文本的分组和键是什么。
|
||||
|
||||
这里有个技巧:想修改某条文本,然后全局搜索该条文本的内容,看看它是位于哪个分组下的什么键。
|
||||
有时会遇到相同文本内容,但分组或键不同的情况,这时候拿这些不同的分组和键,多试几次就可以。
|
Loading…
Reference in New Issue
Block a user