FIT2CLOUD
熹屿 Xiyu 的图标

熹屿 Xiyu

187
37

一座为文字留白的岛。熹屿是一款面向 Halo 2.26+ 的响应式博客主题:杂志式首屏、克制的卡片流、清透的青蓝配色与柔和暗色模式,配合滑动高亮目录、文章入场动效、创作日历、友链自助申请与朋友圈订阅聚合,让阅读与写作都更从容。

1.0.19
ybrc114514 发布于

1.0.19

最新
>=2.26.0

v1.0.19

这一版给友链页的「站点信息」补了一行 图标:显示站点图标的完整地址,右侧按钮一键复制,访客申请友链时不用再猜你的 favicon 在哪儿。

熹屿 Xiyu 友链页「站点信息」:图标行显示完整地址并可一键复制

桌面端实测:图标行位于「网址」下方,显示完整地址(而非缩略图),右侧复制按钮可直接填进友链申请

新增

  • 「站点信息」新增图标行

    访客填友链申请时,图标字段常被留空或填成看图才懂的相对路径。现在「友链页 → 站点信息」多出「图标」一行,显示的就是可直接粘贴的完整地址:

    名称   熹屿 Xiyu
    网址   https://example.com
    图标   https://example.com/upload/logo.png   ← 一键复制
    简介   一座为文字留白的岛。
    RSS    https://example.com/rss.xml
    
  • 图标来源可自定义,留空自动跟随站点

    优先级 来源 设置位置
    1 图标地址(外链 / 图床) 友链页 → 站点信息 · 图标地址
    2 上传附件 友链页 → 站点信息 · 图标
    3 Halo 站点图标(favicon) 设置 → 基本设置 → 站点图标
    4 站点 Logo 设置 → 基本设置
    5 主题内置 favicon 兜底,不会出现空白

    一般来说什么都不用配:只要后台设过站点图标,这里就自动显示它,零配置可用。

细节

  • 只显示地址,不显示缩略图

    站点图标多是宽幅手写 logo(例如 237 × 54),缩略图要么被压成细条、要么把小方块撑变形,反而不如直接把地址写清楚。因此这一行只输出纯文本地址 + 复制按钮,长度不省略、超长按词换行。

  • 相对路径补全为完整链接

    附件库给出的常是 /upload/xxx.svg 这类相对路径,直接复制走会失效。现在会自动补成 http(s)://你的域名/upload/xxx.svg;//cdn.example.com/x.png 这种协议相对地址补成 https://;本来就是完整外链的原样输出。复制按钮复制的也是补全后的地址。

  • 行序与视觉保持一致

    图标行固定排在「网址」下方(桌面与手机一致),行高与相邻行对齐,暗色模式下文本对比度足够,桌面 / 390px / 360px 三种视口均无横向溢出。

升级说明

  • 控制台「外观 → 主题 → 安装」上传本 ZIP 覆盖升级,现有设置全部保留。
  • 升级后无需任何配置:会在「网址」下方自动多出一行图标地址;想换成自己的图标,到「友链页 → 站点信息 · 图标地址 / 图标」填写即可。

兼容性

  • Halo 2.26.0 或更高版本(已在 Halo 2.27.2 实测通过)
  • 建议启用官方链接插件 plugin-links 2.5.0(友链、友链申请、朋友圈动态)
  • 可选的第三方友链申请插件:LinksSubmit(要求 Halo ≥2.20.14)
  • 可选插件:plugin-comment-next 1.1.1、plugin-moments 1.19.0、plugin-hitokoto-hub 3.0.0、plugin-equipment 1.1.1、plugin-steam 1.0.0
  • 现代浏览器(Chrome / Edge / Safari / Firefox),支持 prefers-reduced-motion 与 prefers-color-scheme;不支持 color-mix() 的旧内核走实色回退

验证

本地 Halo 2.27.2 热升级至 1.0.19 后实测,图标专项 26 项全过:

  • 行位置:紧跟「网址」之后(桌面 / 手机均为第 3 行),行序为 名称 → 网址 → 图标 → 简介 → RSS
  • 呈现:不渲染缩略图、纯文本可换行、无省略号截断、复制值等于完整地址、复制按钮带无障碍标签
  • 回退:图标地址 → 上传附件 → Halo 站点图标 → 站点 Logo → 主题内置 favicon,五级顺序与优先级正确
  • 链接补全:站内相对路径补成 http://域名/...、协议相对地址补成 https://...、完整外链原样输出
  • 布局:超长地址完整输出且可断词换行,桌面 / 390px / 360px 无横向溢出,图标行与相邻行高度接近,暗色模式文本可读

回归:LinksSubmit 申请分支 23 项、品牌标识 26 项、横幅与随机访问 29 项,均 0 失败。

Full Changelog: https://github.com/YBRC114514/halo-theme-xiyu/compare/v1.0.18...v1.0.19

资源下载

  • theme-xiyu-1.0.19.zip
1.0.18
ybrc114514 发布于
>=2.26.0

v1.0.18

这一版把站点左上角的标识做成了可替换的:可以直接上传图片(含 SVG)当标识,也可以填图片地址或粘贴内联 SVG 代码,还能选择「只显示标识、不显示站名」。

新增

  • 左上角标识支持三种来源

    「首屏 → 左上角标识」现在按优先级依次取用:

    优先级 设置项 用法
    1 内联 SVG 代码 把 <svg>…</svg> 源码直接粘进来,不用上传;可用 currentColor 跟随主题色
    2 图片地址 填完整的图片网址,https://…/logo.svg 这类外链也能用
    3 图片附件 点「选择」直接上传 PNG / JPG / SVG

    三者都留空时仍回退到站点 Logo,再没有就用站名首字,原有行为不变。

  • 「只显示标识、不显示站名」开关

    标识本身已经是完整字样(宽幅 logo、手写体 lockup)时打开,胶囊里只保留图形并自动收紧内边距,不会出现「图形里写着站名、旁边又重复一遍站名」的情况。

  • 关于上传 SVG

    Halo 支持 SVG 附件(image/svg+xml),主题里点「选择」就能直接上传 .svg。唯一的坑是默认存储策略的允许类型只有「图片 / 视频 / 音频」,没勾 SVG 时会返回 415 不支持上传 image/svg+xml 类型的文件;到后台「附件 → 存储策略」编辑当前策略,把 SVG 勾进允许类型后,上传、选择、前台渲染全链路实测正常。不想动存储策略也可以走「图片地址」或「内联 SVG 代码」。

Snipaste_2026-11-13_23-44-57

修复

  • 宽幅 SVG 标识被压成小方块

    原来所有标识都套在 36 × 36 的圆框里,宽度是高度四倍多的宽幅 logo 会被缩成一条看不清的细线。现在 SVG 标识改为按高度等比缩放:桌面高 32px、宽度上限 168px,手机高 26px、宽度上限 96px,比例不变、不裁切(object-fit: contain)。

  • 手机端左右两块胶囊一高一矮

    左侧品牌胶囊(头像 + 站名)原本 50px 高、右侧搜索 / 收藏 / 菜单按钮组 42px,视觉上明显不齐。现在两者统一为 44px 并顶部对齐,标识图片在窄屏收到 32px。宽幅 SVG 标识也一并收窄(≤96px),390px 与 360px 视口都无横向溢出。

  • 内联 SVG 的安全过滤

    粘贴的代码必须包含 <svg>,且含 <script>、javascript:、onload=、onerror= 时会被忽略并回退到图片 / 站点 Logo,不会把可执行内容注入页面。

升级说明

  • 控制台「外观 → 主题 → 安装」上传本 ZIP 覆盖升级,现有设置全部保留。
  • 想用附件方式上传 SVG,请先把 SVG 勾进「附件 → 存储策略」的允许类型;不想改策略就用「图片地址」或「内联 SVG 代码」。
  • 标识文件里自带的 CSS / SMIL 动画(比如手写描边动效)在 <img> 与内联两种方式下都会照常播放;若想让它静止显示,删掉 SVG 里的 <style> 块即可。

兼容性

  • Halo 2.26.0 或更高版本(已在 Halo 2.27.2 实测通过)
  • 建议启用官方链接插件 plugin-links 2.5.0(友链、友链申请、朋友圈动态)
  • 可选的第三方友链申请插件:LinksSubmit(要求 Halo ≥2.20.14)
  • 可选插件:plugin-comment-next 1.1.1、plugin-moments 1.19.0、plugin-hitokoto-hub 3.0.0、plugin-equipment 1.1.1、plugin-steam 1.0.0
  • 现代浏览器(Chrome / Edge / Safari / Firefox),支持 prefers-reduced-motion 与 prefers-color-scheme;不支持 color-mix() 的旧内核走实色回退

验证

本地 Halo 2.27.2 热升级至 1.0.18 后实测:

  • 标识专项 26 项:附件 SVG 渲染为 img 且 object-fit: contain、内联 SVG 高度 32px 与 currentColor 生效、含 <script> 的代码被忽略并回退、三项全空回退站点 Logo / 首字、宽幅 SVG(237 × 54 手写 lockup)等比缩放不被压扁、隐藏站名后不输出文字并收紧内边距、手机端收窄、左右胶囊等高对齐且 390 / 360 视口无横向溢出
  • 回归:横幅标签化 20 项、抽屉 / 箭头 / 页脚 18 项、两套文章模板渲染、横幅与随机访问动画 29 项、LinksSubmit 申请分支 23 项,均 0 失败

Full Changelog: https://github.com/YBRC114514/halo-theme-xiyu/compare/v1.0.17...v1.0.18

资源下载

  • theme-xiyu-1.0.18.zip
1.0.14
ybrc114514 发布于
>=2.26.0

v1.0.14

熹屿 Xiyu 的首个公开发布版本。这一版把主题标识统一为 theme-xiyu,并集中修复了浮动按钮语义、长内容溢出与可访问性问题。
如果你此前安装过旧标识 theme-azure-isle,请先看下方「升级说明」——两者在 Halo 里是两个不同的主题身份,需要卸载重装。

新增

  • 首页「返回文章列表」浮动按钮

    后台「浮动按钮行为」新增该选项:首页点击按钮会平滑滑到文章列表、跳过首屏 Banner,不跳转、不刷新、不改地址;文章页、归档页、分类页等其他页面仍然是回到顶部。滚动落点已扣除吸顶页眉高度,实测误差 0。

  • 页脚 Powered by 署名

    版权行末尾新增 Powered by Halo · XiYu,Halo 与主题名分别链到 halo.run 和主题仓库。新增两个设置项:footer.show_powered(开关)与 footer.theme_repo_url(换仓库时可改)。桌面端为右下角浮动按钮预留 54px 空间,移动端同步留白,二者不再重叠。

  • 主题图标与站点图标

    提供线条版图标(海平线 + 从水面升起的岛弧):logo.svg 用 currentColor 跟随文字颜色,favicon.svg 为深墨绿圆底配米白线条。站点未设置 favicon 时自动作为兜底,Console 主题卡片使用同一枚图标。

  • 首屏与作者页的可配置项

    首屏高度、Banner 模糊度、标题类型(文字 / 图片)均可配置;作者页提供可开关的 MBTI 卡片,含类型、中英别名与四条维度占比。

修复

  • 修复首页浮动按钮选「返回文章列表」后仍然只是回到顶部

    按钮此前在所有页面都执行回顶,选项形同虚设。现在按页面语义分流:仅在首页滚动到 #post-list,其他页面回到顶部;图标、title 与 aria-label 也随之切换。

  • 修复长标题、长 URL 撑破页面布局

    文章标题、归档列表、正文链接与侧栏卡片补充 overflow-wrap:anywhere;侧栏网格列改为 minmax(0,1fr),避免长词把整列撑宽、导致首页出现横向溢出。

  • 修复页脚署名被浮动按钮遮挡

    页脚在有按钮时自动让出右侧空间,XiYu 不再被按钮压住;移动端取消强制不换行,窄屏可完整折行显示。

  • 修复分享卡片显示「站点标题」占位

    模板中的静态占位文本统一改为品牌名「熹屿 Xiyu」。此前若被链接预览抓取器读到模板源码,卡片标题会显示成「站点标题」。

  • 修复亮色模式次要文字对比度不足

    --l-text-muted 由 #8a9490 调深至 #636e68,对比度从 2.83:1 提升到 4.81:1,同时保留「正文 → 次要 → 弱化」的层级梯度。

  • 修复无摘要内容输出空分享描述

    og:description 与 twitter:description 在内容没有摘要时不再输出空标签。

  • 修复错误页缺少 noindex、友链验证码空图请求

    错误页补充 noindex;友链申请表单的验证码图片默认隐藏,未取到图时不发起空请求。

变更

  • 主题标识由 theme-azure-isle 改为 theme-xiyu

    metadata.name、settingName、configMapName 与打包产物名同步变更;模板内的静态资源路径由构建期读取 theme.yaml 自动生成,无需手改。

  • Console 主题图标改为包内资源

    spec.logo 指向主题包内的 /themes/theme-xiyu/assets/icon-256.png,与 Halo 自身的 status.screenshot 引用方式一致,不依赖外部 CDN。

升级说明

  • 从旧标识 theme-azure-isle 迁移:Halo 以 metadata.name 作为主题身份,旧主题无法直接升级到本版本。请先卸载旧主题,再安装本 ZIP,然后重新设置一遍——旧配置存于 theme-azure-isle-configmap,不会自动迁移到 theme-xiyu-configmap。
  • 从 1.0.13 及更早版本升级:控制台「外观 → 主题 → 安装」上传新 ZIP 即可覆盖升级,现有设置保留。
  • 若此前调整过浮动按钮行为,升级后请确认选项符合预期——「返回文章列表」只在首页滚动到列表,其他页面回顶。
  • 建议升级后在手机端检查一次:抽屉菜单、目录展开、列表视图切换。

兼容性

  • Halo 2.26.0 或更高版本(已在 Halo 2.27.2 实测通过)
  • 建议启用官方链接插件 plugin-links 2.5.0(友链、友链申请、朋友圈动态);未安装时对应页面显示空态,不影响其他页面渲染
  • 可选插件:plugin-equipment 1.1.1、plugin-steam 1.0.0
  • 现代浏览器(Chrome / Edge / Safari / Firefox),支持 prefers-reduced-motion 与 prefers-color-scheme

Full Changelog: https://github.com/YBRC114514/halo-theme-xiyu/commits/main

资源下载

  • theme-xiyu-1.0.14.zip