screenshot.png

xPrinter

热敏小票打印机风格的 Typecho 主题。暖白纸张、等宽字体、撕边与打孔纸,配一盏拉绳开关和一只散步的蜗牛。

1. 功能总览

1.1 外观

功能说明选项
明暗主题右上角旋钮三档:黑暗 / 明亮 / 自动;拉绳可快捷切换defaultTheme
页眉搜索旋钮左侧的放大镜按钮,点击展开胶囊输入框;移动端展开时导航淡出避让enableSearch
拉绳吊灯页面右上角,带物理开关动画enableLamp
电源指示灯外壳右上角,常亮或呼吸showPowerLed
蜗牛漫步页脚缓慢爬行的小蜗牛enableSnail
打孔纸边两侧的圆形打孔enableHoles
网格背景淡淡的牛皮纸网格纹理enableGridBg
返回顶部右下角悬浮按钮enableBackTop
Hero 社交链接首页标题下方的社交按钮,悬停显示资料卡showHeroSocial
页眉社交贴纸页眉浮动图标,可拖动,位置记忆在访客浏览器enableStickers
等宽字体JetBrains Mono,可关闭loadMonoFont
图片滤镜黑暗模式下自动降低图片亮度darkImgFilter

1.2 模板

模板文件用途
首页index.phpHero + 分组文章 / 默认最新列表 + 作品区
文章post.php标题 / 日期 / 分类 / 标签 / 上下篇 / 分享 / 评论
独立页面page.php干净的文章版式,评论可选
归档列表archive.php分类 / 标签 / 日期 / 作者 / 搜索的通用列表
归档页archives.php按年 / 月 / 日汇总,带月份侧栏
友链页links.php卡片网格 + 头像 + 申请说明
评论comments.php嵌套回复 + Gravatar + 表单预填
404404.php简短友好的错误页

2. 首页布局

2.1 Hero

  • 主标题:heroTitle,留空则使用站点标题
  • 副标题:heroDesc,每行一条,每次访问随机展示一条
  • 社交链接:socialLinks,每行 名称|链接|图标地址|账号|描述|数据1|数据2|数据3
  • 开关:showHeroSocial(Hero 按钮)与 enableStickers(页眉图标)可分别关闭

图标规则:填写图标地址则直接使用;加载失败回退到内置矢量图标,最后回退到名称首字母。内置图标按名称关键词匹配 GitHub、X/Twitter、邮箱、RSS、Telegram 等(中英文皆可)。图标地址留空即按名称匹配。

示例

heroTitle: 把日常打印成诗
heroDesc:
所谓日常,不过是我们一天天过下来的日子
可能正是不断发生的奇迹

socialLinks:
GitHub|https://github.com/you
Email|mailto:hi@you.com

2.2 文章分组

homeGroups 每行一组:分类 mid|显示名|装饰符号|篇数,例如:

1|生活|✦|3
2|技术|▸|3

留空则显示默认的最新文章列表(带分页)。分类 mid 可在后台「管理 → 分类」悬停查看。

2.3 作品区

worksList 每行:名称|描述|链接|图标地址。首页在 Hero 下方展示作品卡片网格,worksTitle 控制区块标题,worksMoreLink 填「查看全部」的跳转地址(留空则不显示)。


3. 两个自定义模板页

新建独立页面,在「自定义模板」中分别选择:

3.1 归档页(archives.php)

  • 按年折叠、月份再折叠,默认全部收起,只展开当前月份(当月无文章时展开本页最新月份)
  • 每页篇数可在后台「归档每页篇数」设置(默认 20),底部有上一页 / 页码 / 下一页
  • 右侧月份侧栏汇总全站各月篇数,可直接跳到对应日期的归档列表
  • 每篇显示标题与一行摘要
  • 页面正文会显示在标题下方,可用于写一段归档说明

3.2 友链页(links.php)

friendLinks 每行:名称|链接|描述|头像地址

  • 头像留空时用名称首字母
  • showFriendAvatar 控制是否显示头像
  • friendApplyText 为申请说明,每行一段

4. 文章页

  • 浮动目录:enablePostToc 开启后,正文中 h2/h3 自动生成右侧圆点导航,宽度不足或只有一个小节时自动隐藏;tocOpacity 控制待机透明度
  • 分享快捷方式:enableShare 开启后,标题下方的「日期 | 分类 | 评论」一行右侧出现 X / 微博 / TG / 复制链接按钮,点击复制会提示「已复制」
  • 上下篇:文末自动显示上一篇 / 下一篇

5. 主题设置速查

所有选项在 后台 → 控制台 → 外观 → 设置外观:

分组选项
品牌avatar、logoName、logoSub、heroTitle、heroDesc、socialLinks
导航navItems(留空自动显示首页 + 全部独立页面)
首页homeGroups、showWorks、worksTitle、worksMoreLink、worksList
友链friendLinks、showFriendAvatar、friendApplyText
功能defaultTheme、enableLamp、enableSnail、showPowerLed、enableGridBg、enableHoles、enableBackTop、enableSearch、enablePostToc、tocOpacity、enableShare、archivesPageSize、showHeroSocial、enableStickers、stickyHeader、loadMonoFont、darkImgFilter
页脚footerSiteLabel、showPrintDate、icp
高级customCss

customCss 会追加到 head 末尾,主题会自动剔除其中提前闭合样式块的 </style 序列以防破坏页面结构。


6. 常见问题

Q:改了主题文件,前台没变化?
A:style.css / app.js 通过 ?v=文件修改时间 输出,上传即自动失效缓存,无需手动清缓存。

Q:后台外观里看不到「归档」「友链」模板?
A:它们是独立页面的自定义模板,需要在「管理 → 独立页面」中新建页面并选择模板。

Q:字体加载慢或失败?
A:在主题设置里关闭 loadMonoFont,回退到系统等宽字体。

Q:图片在黑暗模式下太暗?
A:关闭 darkImgFilter。


7. 致谢

基于 nooc.me 的小票打印机视觉语言重新实现。

下载地址:https://github.com/qqzhijian/X-printer

Last modification:October 30, 2026
觉得文章对您有用,请我喝杯咖啡吧!