Cosolar 发布于
>=2.20.0
halo-theme-cosolar v1.1.3
页脚设置重构
将页脚相关设置统一收归至「页脚设置」分组,便于集中管理;并对各功能区做分组整理,提升配置直观性。
- 版权与备案迁移:将原「基础设置」中的
footer_text(页脚版权文字)与icp(ICP 备案号)移动到「页脚设置」分组。theme.config?.basic?.footer_text→theme.config?.footer?.footer_texttheme.config?.basic?.icp/theme.config.basic.icp→theme.config?.footer?.icp/theme.config.footer.icp
- 页脚导航链接分组:将
privacy_url、terms_url、links_url、about_url整理进新增的legal_links子分组,每个链接配独立显示开关(privacy_enabled/terms_enabled/links_enabled/about_enabled),关闭后对应链接不渲染。layout.html的th:with同步改为从legal_links读取,开关关闭时 URL 变量置为null。
- 浅色 / 深色模式分组:将页脚背景图、透明度、文字与图标颜色整理为
light(浅色模式)与dark(深色模式)两个子分组,取代原先平铺的bg_image/bg_image_dark/social_color/social_color_dark等字段。- 读取路径更新:
footer.bg_image→footer.light.bg_image,footer.social_color_dark→footer.dark.social_color等,透明度同理分属light/dark。
- 读取路径更新:
- 页脚订阅表单提交地址迁移:将
footer_subscribe_action从「博主信息」(social) 分组移动到「页脚设置」分组末尾。theme.config?.social?.footer_subscribe_action→theme.config?.footer?.footer_subscribe_action
页脚新增服务商 / 赞助商信息
在页脚底部新增可配置的服务商 / 赞助商信息模块(如云服务、CDN 提供商)。
- 新增「页脚设置 → 服务商/赞助商」子分组 (
footer.sponsor):enabled:是否显示服务商信息(默认关闭)。icon:Iconify 图标名(如ri:cloud-line)或完整图片 URL。name:服务商名称(如 腾讯云、阿里云、京东云)。url:服务商链接,留空则名称显示为纯文本。prefix/suffix:名称前 / 后文字,留空不渲染、不留空格。name_is_link:名称是否为超链接(默认开启)。
- 渲染结构:
prefix与suffix在外层,icon与name包在.footer-sponsor-brand内紧挨显示(gap:0,icon 加margin-right:2px微调);仅当enabled且name非空时渲染整块。 - 新增
.footer-sponsor系列样式,复用主题色变量与 hover 过渡,与页脚其它元素风格一致。
效果示例(配置 name=腾讯云、url=https://cloud.tencent.com、suffix=提供 CDN 加速/云存储服务):
☁ 本网站由 腾讯云 提供 CDN 加速/云存储服务
其中「腾讯云」为指向服务商链接的超链接,图标使用主题主色调。
友情链接页面 (Links Page) 重构与优化
- 重新设计并重构友情链接页面 (
links.html/links.css/links.ts),统一卡片视觉与交互。 - 新增分类导航,支持按分组筛选;分类图标可通过注解 (
theme-cosolar-linkgroup-icon) 自定义(Iconify / iconfont)。 - 新增详细 / 简洁两种视图切换,偏好通过
localStorage记忆。 - 提交友链表单:
- 新增「申请友链」CTA 区块开关 (
links.show_apply_cta)。 - 新增表单字段显示控制 (
links.form_fields),可隐藏 logo / 邮箱 / 描述 / 友链 / RSS 等字段。 - 提交成功 / 失败提示优化为居中胶囊样式,并修复关闭弹窗后提示残留的问题。
- 验证码、表单等样式在深色模式下同步适配。
- 新增「申请友链」CTA 区块开关 (
- 移动端专项优化:
- 分类导航改为下拉选择,避免网格溢出。
- 顶部「分类 + 提交友链」整合为同一行。
- 工具栏(搜索 / 排序 / 视图切换)整合为单行布局。
- 卡片网格使用
minmax(0, 1fr),消除横向滚动;卡片描述最多显示 3 行并省略。 - 申请弹窗内验证码与图片同排,合理分配宽度。
登录页面 (Login) 样式重构与移动端适配
- 社交登录按钮重做:
- 按 Halo OAuth2 插件真实 DOM 结构(
.pill-items > li > form.social-auth-provider-form > button)编写样式,修复原规则被.cos-card form button[type="submit"]覆盖导致样式不生效的问题(提升选择器特异性并加!important)。 - 统一为中性描边胶囊按钮:白底、
--c-border边框、圆角,悬停仅文字 / 边框变主题色,不浮动、无阴影动画、不区分第三方平台品牌色。 - 解除
.pill-items li的边框影响,避免按钮外层出现黑框。 - PC 端彻底移除悬停动画(
transition仅过渡颜色,transform:none、阴影锁定)。
- 按 Halo OAuth2 插件真实 DOM 结构(
- 登录主按钮:
- 补充
min-height:48px与line-height:1,修复不同浏览器默认行高导致的高度异常。
- 补充
- 移动端(≤480px)独立布局:
- 卡片全宽撑满屏幕、无阴影、内容自然紧凑,不再强制垂直居中导致大片空白。
- 输入框高度提升至 54px、登录按钮 52px、字号 16px,触控更友好。
- 社交登录按钮改为自适应排布(
flex-wrap,单项min-width:140px),列数由后台配置决定,不写死。 - 平板及以下隐藏登录页背景图,仅保留纯色背景,只显示登录表单。
- 构建产物
login-*.css同步更新。
文档与配置
- 新增
docs/links-rest-api.md与docs/links-theme-api.md,说明友情链接 REST API 与主题集成能力。 settings.yaml新增友链相关设置项。annotation-setting.yaml新增 LinkGroup 图标注解字段。
其他
main.css全面整理与变量统一。- 移除废弃的
password-reset.css,相关样式并入main.css。 - 更新
README.md与.gitignore。
分页组件 (Pagination) 重构
- 重新设计
src/partials/pagination.html与main.css中的分页样式,使其与文章卡片视觉权重协调。 - 结构精简:移除首页 / 末页按钮,保留「上一页 / 当前页码 / 下一页」核心控件,跳转区移除「跳至 / 页」中文,仅保留输入框 + Go 按钮。
- 视觉层级:
- 下一页:主色实心按钮(最强 CTA),hover 时背景变深 + 阴影光晕 + 图标向右滑动 2px。
- 上一页:次级描边按钮,hover 时主色文字 + 淡背景 + 图标向左滑动 2px。
- 当前页码:弱化文本
当前 / 总,字号 / 字重区分主次,不抢戏。
- 尺寸压缩:按钮高度统一为 28px(PC)/ 24px(移动端),圆角 6-8px,与文章卡片标签同等量级。
- 响应式:
- PC 端:上一页 / 下一页显示「图标 + 中文」组合,最直观易认。
- 移动端(≤640px):自动隐藏中文文字标签,仅保留图标 + 页码,节省横向空间。
- 修复:SVG 与中文文字垂直居中对齐(SVG 设为
display:block+ flex item,文字line-height:1)。 - 修复:下一页按钮 hover / active 态文字颜色未显式声明导致与绿色背景同色「消失」的问题。
链接管理插件:较新版beta加入了友链提交功能,具体可以查看插件说明。

资源下载
- halo-theme-cosolar.zip
