nxxy335
a08782a959
fix: 修复记得页 500 与留言板裁切,统一页头,完善友链/瞬间/暗色/排版 (v1.1.12)
...
记得(/important-dates)
- 修复 500:th:classappend 里 BEM 类名 wi-id__car 的两个 __ 触发 Thymeleaf
__...__ 预处理,提取片段含引号导致 Could not parse as expression;
皮肤修饰类改为 wi-id-skin-cool/cute/neutral(表达式内不再出现 __)
- 牵挂的人卡片:倒计时改到右上角与日期卡片一致,生日一行显示不再折行;
网格改为桌面三列 / 平板两列 / 手机一列
- 页头与订阅/记得统一(标题-副标题-强调线间距)
友链(/links)
- 再次消除两处 __ 预处理隐患:回执修饰类改 wi-links-check-ok/error,
验证码 onerror 由 th:onerror="|...|" 改为普通静态属性(不参与表达式解析)
- 新增反链/可达性检测徽章:读取 link.status.verification,头像右下角
绿点=访问正常(反链有效),红点=访问异常或未检测到反链,未检测不显示
留言板
- 移除 -124px 负 margin 补偿(头部卡片顶部被导航盖住的根因),
装饰引号 top 改为正值不再被 overflow 裁掉
瞬间
- 修复九宫格失效根因:lightgallery 处理时把每张图包进 <a>,导致
:has(:only-child) 恒真、全部图片退化为单列大图;改为直接把 img
作为图库项(data-src),瀑布流样式同样补上 4 图 2x2 规则
全局
- 暗色模式配色调为偏中性暖灰(bg #1e1c1a / raised #292623),降低黄褐闷感,
同步 theme-color 与依赖旧色值的变量
- 正文排版:p 字号 1.05~1.15rem、行高 1.85,H1~H6 逐级放大、层级更清晰
新增「文章组件」插件适配
- 新增 src/styles/_widgets.scss,将插件 --xhhao-com-* 变量映射到主题变量,
明暗模式自动跟随
2026-09-27 10:09:28 +08:00
nxxy335
28b1f90b26
fix: 修复 /links 页面 500(th:attr 受限求值)并校正友链申请回执 (v1.1.11)
...
问题:GET /links 抛 TemplateProcessingException ——
"Instantiation of new objects and access to static classes or parameters is forbidden"
定位到 links.html 第 126 行第 978 列:
th:attr="value=${param.value != null and !#lists.isEmpty(param.value) ? param.value[0] : ''}"
Thymeleaf 对 th:attr 走受限表达式求值,禁止表达式对象的方法调用(#lists.isEmpty 等),
且校验发生在解析阶段,运行时短路(param.value 为 null)也救不了。同样的表达式
放在 th:with 里是合法的 —— 这正是本主题其他页面的既有写法。
修复:
- 全部取值逻辑移入 th:with(采用主题已验证写法 param?.x + x.length > 0 ? x[0] : null),
输出改用单值属性 th:value,彻底不在 th:attr 里放复杂表达式
- 校正申请回执语义:插件实际回跳参数是 applied=success|error|disabled,
另有 message / field / value(旧版误判为 applied=true)
- 统一单条提示:有 message 显示 message,否则成功文案
- applied=success 用强调色,error 用红色
- applied=disabled 时隐藏表单,保留「未开放」提示
- field/value 回填到对应输入框(displayName / url)
- 新增 .wi-links__apply-result--ok 样式
- 版本升至 1.1.11
同时沉淀校验:新增扫描脚本检查构建产物中 th:attr 是否含 #xxx. 方法调用 / new / T() / @bean,
全主题扫描结果为 0。
2026-09-26 20:33:54 +08:00
nxxy335
d3ba189a7d
feat: 新增「记得」插件(plugin-important-dates)主题适配页面 (v1.1.10)
...
- 新增 templates/important-dates.html 覆盖插件默认模板,融入暖屿外观
- 居中标题区(标题/副标题可配置)+ 强调线,与书架、友链等页面一致
- 生活 / 爱车双视图切换,地址栏记忆 ?view=car
- 到期提醒横幅(重要日期 + 座驾到期),支持逐条忽略并记录在本地
- 重要日期便签卡片:倒计时、日期、农历标记、关联的人
- 牵挂的人卡片:大头贴(失效回退首字)、昵称、关系、脱敏生日与倒计时
- 爱车卡片:封面相册、分类品牌、脱敏车牌、到期徽章(临近/逾期)、车主与驾驶人
- 相册浮层运行时移到 body,避免被 .wi-main 层叠上下文困住而被导航/页脚遮挡
- 暗黑模式随主题变量自动适配
- settings.yaml 新增 important_dates 设置组(页面标题/副标题)
- 文档:README 插件表、docs/config/important-dates.md、docs/pages/important-dates.md
- 版本升至 1.1.10
2026-09-26 17:30:06 +08:00
nxxy335
9f677a9f0d
feat: Hero 背景图完整显示、导航二级菜单、瞬间朋友圈化、友链申请表单 (v1.1.9)
...
- Hero:背景图 opacity 0.15 -> 1 完整显示(此前近乎透明的背景图是"蒙灰"观感的
主因);标题/副标题/一言按明暗模式补轻投影保证复杂图片上的可读性
- 导航栏二级菜单:桌面端纯 CSS 悬停/聚焦展开(零 JS),带悬停桥防误关、
下拉箭头旋转反馈;移动端菜单以缩进子项形式呈现
- 瞬间页朋友圈化:头像(moment.owner.avatar,缺省回退站点名首字占位)+ 昵称
+ 正文 + 九宫格图片 + 时间操作;九宫格遵循微信规则(单图原比例、2/4 图两列、
其余三列)
- 友情链接页适配 plugin-links 友链申请:同源表单(POST /links/apply/submit +
csrfToken + GET /links/apply/captcha 验证码图,点击刷新),支持名称/链接/
Logo/描述/邮箱/反链/RSS 字段、提交结果与错误提示;插件未开放申请时验证码
加载失败自动隐藏表单;新增 links_apply_form_enabled 开关(默认开启)
2026-09-26 16:14:20 +08:00
nxxy335
c1950e142a
fix: 修复笔记弹窗被导航栏和页脚遮挡,书架统计居中 (v1.1.8)
...
- 笔记弹窗被遮挡:弹窗是 position:fixed 但由 innerHTML 注入在 .wi-main 内,
.wi-main 自带层叠上下文(z-index:1),弹窗的 z-index:10000 无法超越导航栏
(z-index:100)和页脚(DOM 靠后的同级 z-index:1)。现注入后将弹窗移至 body 下,
彻底脱离该层叠上下文
- 弹窗移出 .wr-shelf 后脱离其 --wr-* 变量作用域,为弹窗补独立暗黑适配
(:global 选择器 + 变量映射 + 面板/关闭按钮/文字兜底),避免深色下回退为墨色文字
- 书架统计数据改为水平居中,紧贴主题标题区(标题+强调线)下方,与全站版式一致
- 暗黑下书架分隔线(--wr-line)比全站 rule 略提亮,年份分组装饰线在深色底可见
2026-09-26 15:29:14 +08:00
nxxy335
032b5601ac
fix: 书架页标题与主题统一,修复顶部空白与暗黑下数据看不清
...
依据插件 WeReadShelfRenderer 的实际输出结构(.wr-shelf / .wr-head-title /
.wr-head-stats / .wr-year / .wr-grid)做针对性适配:
- 标题统一:恢复与订阅/图库/友链页面一致的居中标题区(标题+副标题+强调线),
隐藏插件自带的 .wr-head-title,避免双标题且样式不统一
- 顶部空白:插件容器自带 clamp(40px,6vw,72px) 顶部内边距,叠加主题边距后
形成大片空白;现收紧插件 padding-top 并将页面 padding 与其他页面对齐
- 暗黑适配:插件为苹果风格浅色配色(--wr-* 变量、#1d1d1f 墨色文字),深色
背景下统计数字几乎不可见。现通过覆盖 --wr-* 变量 + :where() 零特异性
文字兜底接管配色,不破坏插件自身显式样式;笔记弹窗浅色底同步处理
2026-09-26 13:55:41 +08:00
nxxy335
d01664197f
feat: 暗黑模式对比度优化与书架页标题调整 (v1.1.7)
...
暗黑模式
- 核对全部 19 个页面均加载含 html.dark 变量的样式表,暗黑配色全局生效
- 深色背景下人眼对低对比更敏感,调整暗黑变量提升可读性:
次要文字 --ink-3 对比度 2.43 -> 3.12,分隔线 --rule 1.23 -> 1.42,
卡片底色 --bg-raised 提亮以增强层次,--ink-2 5.63 -> 6.28
书架页
- 移除主题自带的"书架"大标题,避免与插件返回内容中的标题重复
- 保留副标题(默认"来自微信读书的同步藏书"),清理失效样式
- 页面标题配置项改为仅作用于浏览器标签,并补充说明
2026-09-26 13:28:41 +08:00
nxxy335
bcc221c3bd
fix: 修复首页卡片字数与 Hero 滚动,移除光感跟随 (v1.1.6)
...
修复
- 首页文章卡片开启"显示字数"后无效果:该配置项此前只有声明没有实现,现已在文章流卡片接入服务端字数统计(依赖 API 扩展包,未安装时自动隐藏)
- Hero 下滑箭头滚动不到位:Hero 为固定背景(position: fixed),此前箭头额外减去了导航栏高度,导致内容区上方始终露出一段 Hero 渐变;现与滚动吸附逻辑对齐,内容区顶部直接对齐视口顶部
- 鼠标点击特效开启后无效果:特效类型默认值为 off(关闭),开启开关但不选择类型时静默不生效;默认值改为"社会主义核心价值观"
移除
- 移除鼠标光感跟随功能及对应配置项
优化
- 上下篇导航:新增方向箭头与悬停反馈(背景、位移、变色),移动端收紧内边距
- Hero 一言自动刷新改为淡出→换文案→淡入的过渡动画,避免生硬跳变
- README 全面更新:环境要求、插件适配表(新增微信读书与 API 扩展包)、自定义页面模板、功能说明、目录结构与开发注意事项
2026-09-26 12:29:28 +08:00
nxxy335
430d107d44
feat: 完善主题功能并适配插件 (v1.1.5)
...
功能新增
- 新增页面布局契约 templates/layout.html,插件前台页面可复用主题外观,避免回退到 Halo fallback 布局
- 新增微信读书页面模板 (weread.html),集成 halo-weread-plugin 书架
- 新增订阅页面模板 (page_subscriptions.html)
- 新增欢迎弹窗组件(IP 地理定位,多 API 容错)
- 新增点击特效组件(9 种效果)
- 页脚新增全站统计,支持开关与统计项配置,默认开启
插件适配
- 适配 extra-api:文章字数改服务端统计、正文可选中英混排与服务端代码高亮
- 修正各页面插件应用市场链接与插件名
修复
- 修复文章正文图片/视频无法居中(正文样式移至全局,scoped 样式对 Thymeleaf 注入内容无效)
- 修复正文 H1-H6 字号过大,重排层级与移动端断点
- 修复 th: 属性中文字符串缺少引号导致的 Thymeleaf 解析异常(/links、/moments 500)
- 修复 JS 内联表达式与 Thymeleaf 内联语法冲突,全部内联脚本加 th:inline="none"
- 修复移除 i18n 后 steam 页 Elvis 表达式回归问题
- 修正订阅页 th:attr 引号嵌套错误
优化
- Hero 移除灰色遮罩,下滑箭头改为可点击平滑滚动
- 优化目录样式:移除圆点与下拉箭头,支持两行显示,修复长目录截断
- 移除 i18n 多语言支持
清理
- 移除未使用的 Vue/图标依赖与废弃脚本、重复资源
2026-09-26 11:18:52 +08:00
nxxy335top
9d0bfcfb4f
优化移动端阅读体验、优化瞬间样式、修复导航target属性渲染错误
v1.1.1
2026-05-22 14:56:55 +08:00
nxxy335top
f48db60690
Merge branch 'main' of https://github.com/sunny-335/halo-theme-WarmIsland
2026-05-21 22:58:56 +08:00
nxxy335top
67dc37c308
修复移动端目录悬浮球,修复文章页布局,优化画廊
2026-05-21 22:56:57 +08:00
暖心向阳335
0c094acbc5
Update image path for WarmIsland preview
...
Fix image path for WarmIsland preview in README.
v1.1.0
2026-05-20 18:41:00 +08:00
nxxy335top
788d0cc488
update
2026-05-20 18:39:28 +08:00
nxxy335top
bab8380894
增加i18n支持
v1.0.0
2026-05-20 17:18:33 +08:00
nxxy335top
6cd8167b49
update LICENSE
2026-05-19 19:20:26 +08:00
nxxy335top
746784e6d9
update
2026-05-19 19:10:41 +08:00
nxxy335top
5194d14fb0
update README.md
2026-05-19 17:25:43 +08:00
nxxy335top
31997e51c8
update README.md
2026-05-19 15:53:10 +08:00
nxxy335top
fa639e0aae
update README.md
2026-05-19 15:46:37 +08:00
nxxy335top
93dc21e69b
完善页脚
2026-05-19 14:18:09 +08:00
nxxy335top
1bf7107966
增加豆瓣、Steam、装备管理适配页面
2026-05-19 11:07:22 +08:00
nxxy335top
0021045c5f
修复EXIF
2026-05-18 20:35:58 +08:00
nxxy335top
a0c64736eb
first commit
2026-05-18 17:29:18 +08:00
Ryan Wang
e85fbd62f4
Add nodemon, nodemon.json and update dev script
...
Add a nodemon.json config to watch src and public (ext: astro, ts, html), add nodemon as a devDependency, and change the package.json "dev" script to run nodemon --config nodemon.json --exec 'astro build' (replacing the previous "astro dev"). Also remove the preview script.
2026-04-09 14:42:08 +08:00
Ryan Wang
6f1cede536
Expand README and tidy templates & VSCode settings
...
Replace the placeholder README with a full Chinese README for the Halo + Astro theme starter, adding rationale, architecture, dev/build instructions, directory layout, and usage notes. Also apply minor formatting/whitespace cleanups: adjust .vscode/settings.json formatting, collapse attributes on the category list div in src/pages/categories.astro, and remove an extra blank line in src/pages/category.astro. These are documentation and formatting changes only — no functional behavior changes.
2026-04-07 23:31:39 +08:00
Ryan Wang
184ff9351d
Extract post list into reusable fragment
...
Add public/fragments/post-list.html containing the shared post list markup, and update src/pages/category.astro and src/pages/index.astro to replace the in-file duplicate list with <th:block th:replace="~{fragments/post-list}"></th:block>. This removes duplicated template code and centralizes the post list for easier maintenance; existing empty-feed and pagination logic remain unchanged.
2026-04-07 23:26:08 +08:00
Ryan Wang
29741c6df9
Add unplugin-icons & use Mingcute icons
...
Register unplugin-icons (Icons Vite plugin) in astro.config and add unplugin-icons + @iconify-json/mingcute to devDependencies. Replace inline SVGs in ThemeSwitcher.vue with MingcuteSunLine / MingcuteMoonLine icon components imported from ~icons, and add unplugin-icons types to tsconfig. Also simplify VSCode formatter setting and update package.json accordingly.
2026-04-07 23:15:32 +08:00
Ryan Wang
b34fd27d45
Add UserButton, update Header & deps
...
Add a new src/components/UserButton.vue and update src/components/Header.astro to integrate UI changes. Add @halo-dev/api-client and ky to package.json and update editor settings to use Prettier for .vue and .astro files. Regenerate pnpm lockfile.
2026-04-07 23:09:18 +08:00
Ryan Wang
63d640eaac
Remove templates and compiled theme assets
...
Delete prebuilt template pages and their compiled theme assets under templates/: removes templates/*.html and the templates/assets files (Layout CSS, ThemeSwitcher, client runtime and bundled runtime). Cleans up generated/compiled template artifacts so they no longer ship with the repository.
2026-04-07 22:52:41 +08:00
Ryan Wang
cf680c4d17
Refactor
2026-04-07 22:52:16 +08:00
Ryan Wang
ec2fcc6e4a
chore: bump dependencies
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-28 23:10:22 +08:00
Ryan Wang
b7cbc0866e
chore: bump dependencies
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-25 15:50:49 +08:00
Ryan Wang
b1fa0b0b2f
chore: bump dependencies
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-14 11:54:58 +08:00
Ryan Wang
6bbe1b4746
chore: update theme.yaml
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-08 16:45:48 +08:00
Ryan Wang
1395ce99ae
chore: update theme.yaml
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-03 23:37:36 +08:00
Ryan Wang
e12b569be8
feat: add settings.yaml
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-03 17:14:52 +08:00
Ryan Wang
843e70ee4c
feat: add native about html
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-01 15:20:49 +08:00
Ryan Wang
39df649b96
feat: add i18n files
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-08-01 12:29:02 +08:00
Ryan Wang
3e2f28b4ff
chore: bump dependencies
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-31 18:06:57 +08:00
Ryan Wang
4f697e33e7
chore: use @halo-dev/astro-halo-theme-integration package
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-31 17:38:36 +08:00
Ryan Wang
0a950731d9
feat: add links page
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-30 11:04:52 +08:00
Ryan Wang
ba9816e4c1
chore: add eslint prettier
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-29 20:43:20 +08:00
Ryan Wang
05dcae511e
docs: update readme
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-29 20:20:53 +08:00
Ryan Wang
3e767be637
chore: remove .idea folder
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-29 18:08:30 +08:00
Ryan Wang
a46eebfb87
feat: add thymeleaf assets processor
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-29 18:06:56 +08:00
Ryan Wang
ceceb37349
init project
...
Signed-off-by: Ryan Wang <i@ryanc.cc >
2022-07-28 22:53:51 +08:00