fix: 按 Halo 应用市场审核意见整改外部资源与隐私(v1.2.5 修订)
- 默认零第三方自动请求:移除 21 个模板的 preconnect/dns-prefetch、PrismJS+autoloader、qrcode-generator 及内置一言/IP 定位 API - 一言与代码高亮配色改为自托管;欢迎弹窗自定义 IP 接口改为 opt-in;微信分享改为复制链接;LightGallery 按 GPLv3 使用 - README 新增「外部资源与隐私」「验证与回归测试」章节,修正无效链接并补充字体 OFL 来源;同步 docs 与修正虚构的目录树 - friends 等 12 处 #strings.substring 加空值保护;logo 由两份 1.5MB 压缩去重为单份 146KB - 新增 pnpm audit:external 与打包前置合规审计;制品补齐 34 个 docs 文档与预览图
This commit is contained in:
1 parent
c0ad7331d4
commit
dda86294b0
36 files changed
+830
-236
No files matched your search
@@ -84,7 +84,7 @@
|
||||
|
||||
### 代码高亮主题(article_code_theme)
|
||||
|
||||
WarmIsland 使用 Prism.js 实现代码语法高亮,提供两种主题风格:
|
||||
主题不再加载 Prism.js 运行时与 autoloader,**语法高亮由 Halo 应用市场的代码高亮插件或「API 扩展包」服务端高亮输出**。本项只切换主题自托管的两套 `.token` 配色(`assets/vendor/prism-warm.css` / `prism-cold.css`),不产生任何远程请求:
|
||||
|
||||
| 值 | 说明 |
|
||||
| --- | --- |
|
||||
@@ -100,7 +100,7 @@ article_code_theme: warm
|
||||
```
|
||||
|
||||
::: tip
|
||||
代码高亮支持多种编程语言,包括 JavaScript、Python、Java、Go、Rust、YAML、JSON、Bash 等。语言检测基于代码块的语言标记自动完成。
|
||||
支持的语言范围取决于所安装的高亮插件(常见的 JavaScript、Python、Java、Go、Rust、YAML、JSON、Bash 等均可覆盖)。语言识别基于代码块的语言标记,建议始终显式标注。
|
||||
:::
|
||||
|
||||
### 目录展开模式(article_toc_expand)
|
||||
@@ -136,7 +136,7 @@ article_related_title: "猜你喜欢"
|
||||
| 平台 | 说明 |
|
||||
| --- | --- |
|
||||
| QQ | 点击后弹出 QQ 分享窗口,自动携带文章标题和链接 |
|
||||
| 微信 | 扫码分享到微信(生成文章完整 URL 的二维码) |
|
||||
| 微信 | 弹出文章链接并提供「复制链接」按钮,由访客在微信内分享(不加载二维码库) |
|
||||
| 微博 | 分享到新浪微博 |
|
||||
| X (Twitter) | 分享到 X |
|
||||
| Facebook | 分享到 Facebook |
|
||||
@@ -157,7 +157,7 @@ article_related_title: "猜你喜欢"
|
||||
| Telegram | ❌ |
|
||||
|
||||
::: info 图标来源
|
||||
分享按钮图标来自 [Font Awesome](https://fontawesome.com/)(Free v7.2.0,CC BY 4.0 / SIL OFL 1.1 协议)和 [Simple Icons](https://simpleicons.org/)(CC0 协议)。微信图标点击后会弹出二维码弹窗,用户可使用微信扫码分享。
|
||||
分享按钮图标来自 [Font Awesome](https://fontawesome.com/)(Free v7.2.0,CC BY 4.0 / SIL OFL 1.1 协议)和 [Simple Icons](https://simpleicons.org/)(CC0 协议)。微信图标点击后会弹出「复制链接」弹层,用户复制后可在微信内分享;二维码由远程库生成的旧实现已移除,主题不再加载任何第三方脚本。
|
||||
:::
|
||||
|
||||
#### 分享区域标题(article_share_title)
|
||||
@@ -174,7 +174,7 @@ article_share_channels:
|
||||
```
|
||||
|
||||
::: tip
|
||||
分享功能会自动携带文章标题和完整链接,无需手动配置分享内容。微信分享通过二维码实现,二维码内容为文章的完整 URL(包含域名),用户扫码后可直接打开文章。QQ 分享通过弹窗方式打开 QQ 分享页面。移动端会优先显示适合移动端的分享方式。
|
||||
分享功能会自动携带文章标题和完整链接,无需手动配置分享内容。微信分享通过「复制链接」实现:弹层显示文章完整 URL(含域名),点击按钮写入剪贴板,全程在浏览器本地完成、不发送外部请求。QQ 分享通过弹窗方式打开 QQ 分享页面。除访客主动点击外,页面加载时不会访问任何第三方平台。
|
||||
:::
|
||||
|
||||
## 阅读增强功能
|
||||
|
||||
+13
-9
@@ -10,8 +10,8 @@ Hero 首屏是 WarmIsland 主题的标志性区域,占据首页首屏的全部
|
||||
| `hero_title` | 文本 | — | 主标题(留空则使用站点标题) |
|
||||
| `hero_subtitle` | 文本 | — | 副标题(留空则使用站点副标题) |
|
||||
| `hero_description_mode` | 下拉 | `hitokoto` | 描述文案来源:`none` / `hitokoto` / `custom` |
|
||||
| `hero_hitokoto_api` | URL | `https://v1.hitokoto.cn/` | 一言 API 地址 |
|
||||
| `hero_hitokoto_categories` | 多选 | `d, i, k` | 一言句子类型 |
|
||||
| `hero_hitokoto_api` | URL | 留空 | 自定义一言 API;留空使用主题内置本地句子库(零外部请求) |
|
||||
| `hero_hitokoto_categories` | 多选 | `d, i, k` | 句子类型筛选,仅对自定义 API 生效 |
|
||||
| `hero_custom_description` | 多行文本 | — | 自定义描述文案 |
|
||||
| `hero_hitokoto_auto_refresh` | 开关 | `false` | 一言自动刷新 |
|
||||
| `hero_hitokoto_refresh_interval` | 下拉 | `10000` | 一言刷新间隔(秒) |
|
||||
@@ -49,24 +49,28 @@ hero_subtitle: "记录温暖与灵感"
|
||||
| 值 | 说明 |
|
||||
| --- | --- |
|
||||
| `none` | 不显示描述文案 |
|
||||
| `hitokoto` | 从一言 API 实时获取随机句子(默认) |
|
||||
| `hitokoto` | 从主题内置本地句子库随机取一条(默认,零外部请求) |
|
||||
| `custom` | 显示自定义的描述文案 |
|
||||
|
||||
### 一言模式(hitokoto)
|
||||
|
||||
选择 `hitokoto` 模式后,Hero 区域会从一言 API 获取随机句子,每次刷新页面都会展示不同的内容。
|
||||
选择 `hitokoto` 模式后,Hero 区域**默认读取主题内置的本地句子库** `assets/data/hitokoto.json`
|
||||
(随主题自托管的静态 JSON),每次刷新随机展示一条,不依赖任何外部服务,也不会因为第三方接口
|
||||
不可用而出现空白。可直接编辑该 JSON 替换成自己喜欢的句子。
|
||||
|
||||
#### 一言 API 地址(hero_hitokoto_api)
|
||||
#### 自定义一言 API(hero_hitokoto_api)
|
||||
|
||||
默认使用官方 API `https://v1.hitokoto.cn/`。如果你部署了一言的私有实例,可以修改为自建 API 地址。
|
||||
默认**留空**(零外部请求)。如果需要使用在线一言或自建实例,可在此填写 API 地址;
|
||||
填写后浏览器才会向该地址发起 GET 请求,第三方可见访客 IP / User-Agent。
|
||||
请自行评估服务商隐私政策,并在站点隐私说明中披露,详见 README「外部资源与隐私」。
|
||||
|
||||
::: tip
|
||||
自建一言 API 可以提升加载速度并避免第三方服务不稳定的问题。部署方式请参考 [hitokoto 官方文档](https://developer.hitokoto.cn/)。
|
||||
::: warning
|
||||
这是站点管理员主动开启的可选能力。留空即可随时关闭,无需重装主题。
|
||||
:::
|
||||
|
||||
#### 一言句子类型(hero_hitokoto_categories)
|
||||
|
||||
通过勾选来筛选获取的句子类型,支持多选:
|
||||
仅在填写了自定义 API 时生效,用于筛选该接口返回的句子类型,支持多选:
|
||||
|
||||
| 值 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
|
||||
Reference in new issue
Block a user