首页更新日志Kratos+ v1.1.16

Kratos+ v1.1.16

本次版本新增 5 个功能模块:独立的搜索结果页、评论者地域分布、站点数据看板、命令面板(⌘K / Ctrl+K)、内链悬浮预览卡。

新功能

  • 独立搜索结果页(search.php:此前搜索结果由首页模板兜底,只在列表上方加一行「搜索内容:」。现在改为独立结果页:
    • 页头卡展示关键词与命中总数,并内置一个二次搜索框;
    • 结果按类型分组展示 —— 文章(可分页)、说说系列。说说是独立文章类型且默认不进 WordPress 搜索,现由主题单独查询后作为独立分组补上;
    • 标题与摘要中的关键词高亮,摘要窗口以首个命中词为中心截取,而不是永远从正文开头截;
    • 零结果时给出兜底出口:随机漫步、热门标签、回到首页;
    • 后台可一键关闭增强模式,回落到原来的经典列表样式。
    • 配置位置:主题选项 → 全站配置 → 搜索结果页
  • 评论者地域分布短码 [comment_geo]:把已通过审核的评论按 IP 归属地聚合,输出「省份榜」「国家 / 地区榜」(可选「城市榜」)与三张总览卡(覆盖省份数 / 覆盖国家地区数 / 已定位评论数)。
    • 归属地解析走主题已内置的 ip2region 离线库,不请求任何外部 API;
    • 先按 IP 分组再对唯一 IP 逐个解析(而不是逐条评论解析),结果整体缓存,新评论通过审核时自动失效重算;
    • 参与统计的唯一 IP 数量与缓存时长均可配置,便于大站控制重算成本。
    • 配置位置:主题选项 → 评论配置 → 评论地域分布
  • 站点数据看板([site_dashboard] + 「站点数据看板」页面模板):一页看完这个博客长成了什么样子。
    • 总览卡:已运行天数 / 文章总数 / 累计字数 / 评论总数 / 说说条数 / 平均更新间隔;
    • 近 N 天发布节奏柱状图(纯 CSS,不引入任何图表库);
    • 年度产出、分类占比、最勤评论者三张榜单;
    • 底部可内嵌评论者地域分布;
    • 建站天数取自「年度回顾 → 建站日期」,没填时自动回落到最早一篇文章的发布时间;
    • 数据层全部复用既有模块(归档统计 / 评论排行 / 阅读增强 / 地域分布),不重复实现统计逻辑。
    • 配置位置:主题选项 → 数据看板
  • 命令面板(⌘K / Ctrl+K):一个入口聚合站内高频动作。
    • 快捷键按访客的操作系统自动适配:macOS 显示并响应 ⌘K,Windows / Linux 显示并响应 Ctrl+K;非输入状态下按 / 也可唤出;
    • 输入即增量搜索文章(带去抖),回车可直接跳到完整搜索结果页;
    • 页面跳转:特色页按「页面实际使用的模板」动态发现(用固定的中文名与图标),其余普通页面按菜单顺序列出(条数可配)—— 你没建的页面不会出现在列表里,不会点出 404;
    • 单个页面可单独排除:在「编辑页面 → 右侧 Kratos+ 命令面板」里关掉「在命令面板中展示」即可,默认展示;
    • 「展示页面跳转」默认开启,「展示皮肤切换」默认关闭(皮肤条目较多,且需要同时开启「前端皮肤切换器」才生效);
    • 还包含:切换暗色 / 亮色、随机漫步;
    • 键盘全程可用:↑↓ 选择、Enter 打开、Esc 关闭;可选在页脚工具栈显示一个唤出按钮,方便不知道快捷键的访客发现。
    • 配置位置:主题选项 → 全站配置 → 命令面板
  • 内链悬浮预览卡:正文里指向本站的链接,鼠标悬停后弹出预览卡,分两种卡型:
    • 文章 / 页面:缩略图、标题、摘要、日期、字数与预计阅读时长、评论数;
    • 分类 / 标签 / 系列归档:归档名、分类法徽章、描述、文章总数、最近几篇(条数可配,填 0 只显示总数)。「关键词自动内链」产出的正是这类归档链接,两个功能天然配套;归档描述里按自动内链约定写的「别名: a, b」配置行会被自动过滤,不会当成简介展示;
    • 卡片内可直接点击:文章卡的标题与缩略图、归档卡的归档名与「最近几篇」里的每条标题,都是真链接,可以从预览卡直接点进去(鼠标从链接移到卡片上时不会收起);
    • 静默加载:请求期间不显示任何「加载中」占位,数据到手才淡入卡片;鼠标已经移开或请求失败则什么都不会出现,不打扰阅读;
    • 链接解析在服务端完成(REST 接口 + 按文章/按归档分别缓存),文章保存、分类标签增删改时自动失效;
    • 接口只接受本站链接,不会变成任意 URL 的探测器;
    • 只在真正具备悬停能力的指针设备上启用,触屏设备完全不启用、不拦截点击;
    • 触发延时、摘要字数、阅读速度、缓存时长均可配置。
    • 配置位置:主题选项 → 阅读增强 → 内链悬浮预览卡

优化

  • 命令面板的入口开关全部集中到「全站配置 → 命令面板」,分「面板内容」与「搜索行为」两组。面板里出现哪些分组(页面跳转 / 暗色切换 / 随机漫步 / 皮肤切换)在一屏内调完,不必再去各功能的配置区里翻;暗夜模式、每日皮肤、随机漫步三处各留一条指引说明入口位置。
  • 面板入口与页脚按钮彻底解耦
    • 暗色切换:此前「开了暗夜模式但隐藏了页脚切换按钮」时,命令面板里也看不到暗色入口 —— 其实 dark.js 在暗夜总开关打开时就已加载、切换能力一直在,页脚按钮只是其中一个入口。现已改为只看暗夜总开关,隐藏页脚按钮时命令面板就是唯一入口。同时 dark.js 对外暴露 window.kratosDarkcurrent / set / toggle),供命令面板等组件复用,不再各自重写一遍写 localStorage 的逻辑。
    • 皮肤切换:此前必须同时开启「前端皮肤切换器」按钮才生效。皮肤覆盖的持久化其实由 wp_head 的内联脚本负责(切换器脚本只是页脚那个弹出面板的 UI),现已抽出独立判定,只开命令面板的皮肤分组也能让访客选皮肤并在下次访问时保持。
  • 随机漫步拆成三个开关:总开关、页脚按钮、命令面板入口各自独立。跳转端点与 [stumble] 短码不受开关影响、始终可用,因此已经散在文章里的漫步链接不会失效。
  • 命令面板唤出按钮换用终端提示符图标:原先与页脚的站内搜索按钮同为放大镜,两个并排难以分辨;同时把 .cmdk-launch 登记进各皮肤的底部工具盒按钮名单,使其配色跟随皮肤(此前只有一层默认灰底)。
  • 新增组件零皮肤成本接入:本次 5 个组件的配色全部走 --khs-* 命名空间并接入 components.css 的皮肤别名层,形态走 kr-* 公共类,因此 19 套皮肤一行覆盖代码都没有新增,也自动跟随暗夜模式。
  • 看板页面已并入皮肤的特色页豁免名单:新的 is-kratos-dashboard-page 已加入全部皮肤对外层 .details 的装饰豁免(含 bookfold 的反向排除链),不会出现「卡中卡」。

修复

  • 修复内链预览卡里摘要字号大于标题:摘要没有显式声明字号,只靠容器继承 13px,而 style.css 有一条裸元素规则 p, ul { font-size: 16px } —— 直接命中元素的声明优先于继承值,导致摘要被拉到 16px。现已为摘要与归档文章列表显式声明字号,层级恢复为「标题 15 > 摘要 13 > 列表 12」。

升级说明

  • 无需任何配置迁移。5 个模块的开关默认全部开启,均可在主题选项中单独关闭。
  • 搜索结果页search.php 一旦随主题就位即自动生效(WordPress 模板层级优先于 index.php)。若更偏好原来的样式,到 全站配置 → 搜索结果页 关掉「增强搜索结果页」即可。
  • 评论地域分布:首次渲染需要解析 IP,如果站点评论量较大,第一次打开会稍慢,之后走缓存。若「评论配置 → 通用配置」里的 ip2region 数据库还没下载,短码会给出提示而不是报错。
  • 累计字数统计:需要读取全部已发布文章正文逐篇计数。文章上千篇且觉得缓存重算偏慢的站点,可在「数据看板」里单独关掉这一项。
Kratos+ Theme WordPress
0 条评论

发表评论

加载验证码…换一题