OneNav 主题切换三步搞定:从默认皮肤到私人定制
【免费下载链接】onenav使用PHP + SQLite 3开发的书签管理系统,将浏览器书签集中式管理,做到一处部署,随处访问。项目地址: https://gitcode.com/gh_mirrors/on/onenav
书签越攒越多,界面却越看越腻——你是不是也有这种感觉?OneNav 作为一款用 PHP + SQLite 3 打造的书签管理系统,把分散在浏览器各处的收藏集中到一处管理,这本该是件爽事。可每天打开同一个页面,看到的永远是同一张脸,时间一长,再顺手的工具也会觉得乏味。好消息是,OneNav 的主题切换功能比你想的简单得多,三分钟换肤,半小时定制,这篇文章带你一次走通。
先别急着找设置,搞清楚你能换成什么样
很多人一上来就直奔后台,结果面对一堆陌生主题名犯了选择困难。其实不用急,OneNav 的模板目录templates/里躺着的每一套主题,背后都是一整套独立的界面实现。你只需要记住一件事:选主题不是选"最好看的",而是选"最合你使用场景的"。
| 主题 | 风格定位 | 版本要求 | 适合谁 |
|---|---|---|---|
| default2 | 功能最全的默认主题,现代感强 | OneNav ≥ 1.1.0 | 想开箱即用、功能不将就的多数人 |
| default | 经典 Material 风格,简洁克制 | OneNav ≥ 0.9.31 | 喜欢清爽、只看链接本身的老用户 |
| minima | 基于 Bootstrap 4,响应式简约风 | OneNav ≥ 1.1.4 | 追求极致加载速度、内容优先主义者 |
| mobile | 专为触屏优化的移动端主题 | — | 手机访问频率远高于 PC 的重度移动党 |
| universal | 通用型,美观与实用兼顾 | — | 不确定设备分布,先求稳再求美 |
看出规律了吗?PC 上求功能,手机上求流畅。所以 OneNav 才把"PC 主题"和"手机主题"分开设置——这也正是它比一般导航系统贴心的地方,你不必为了手机妥协桌面体验。
一步步把界面换成你想要的样子
打开后台,进入"设置"里的主题管理页,你会发现这里并不复杂:顶部两个下拉框,一个管 PC 端,一个管手机端,选完点保存,设置立即生效。
操作后你会看到:下拉框旁边的主题卡片列表里,当前使用的主题会高亮标记,页面上方弹出"设置已保存"的提示。整个过程不超过十秒。
三个小细节值得留意:
- 预览不占名额:每个主题卡片上的"预览"按钮会直接带
?theme=主题名参数打开前台页面,想试哪个点哪个,不保存就不会生效,放心大胆逛。 - 在线主题库:页面下方还有"在线主题"区域,看到顺眼的点"下载",主题会落到本地,之后就能正常选用、更新。
- 参数设置:部分主题支持额外配置,比如全宽模式、是否显示链接描述、favicon 来源。点主题卡片上的"参数设置",按提示填就好,拿不准就保持默认。
踩坑实录:切完主题纹丝不动,多半是它
最让新手崩溃的场景是这样的:主题选好了,保存也提示成功了,刷新前台一看——还是老样子。别慌,这大概率不是 OneNav 的锅。
避坑提示:浏览器缓存是主题切换的头号假想敌。切换主题后如果页面没变化,先按 Ctrl+F5 强制刷新,或者清一次缓存再访问。另外,"预览"模式走的是 URL 参数临时切换,关掉标签页就恢复原状,别把预览当成保存。
还有一个隐藏的坑藏在版本兼容里:每套主题的info.json都声明了require.min,比如 minima 要求 OneNav 至少 1.1.4。如果你的程序版本太旧,前台会直接提示"主题要求最低 OneNav 版本为 X",这时候先升级主程序,再谈换肤。
三分钟看懂它背后的判断逻辑
弄明白"为什么会这样",你以后就再也不怕换主题了。OneNav 读取主题的逻辑其实只有三步:
- 从数据库读取你保存的
s_themes配置,拿到 PC 主题和手机主题的名字; - 检测访客的 User-Agent 里有没有
mobile、android、iphone这类关键词,命中就切手机主题,否则用 PC 主题; - 依次查找
templates/和data/templates/两个目录,找到就加载对应的index.php渲染页面。
所以你手动往templates/里丢一个主题文件夹,后台下拉框里立刻就会出现它——这也为自定义主题铺平了路。
从复制粘贴开始,半小时做出自己的主题
自定义主题没有想象中那么神秘。最稳的入门路线是"克隆-改-换"三步:
第一步,把templates/minima/整个目录复制一份,改名为你自己的名字;第二步,动它的index.php和static/style.css,改配色、调布局、换文案,改到你满意为止;第三步,编辑info.json,更新主题名、版本号、描述,保存后刷新后台,你的主题就出现在列表里了。
{ "name": "我的第一个主题", "description": "基于 minima 改造的自定义主题", "version": "1.0.0", "require": { "min": "1.1.4" } }配置文件的写法就这么直观:require.min告诉 OneNav 你的主题需要多新的程序版本,config段里声明的每一项,都会自动出现在后台的"参数设置"里。想深入的同学,可以在前台源码里搜theme_config相关的 API 调用,看参数是怎么被消费的。
进阶提示:自己改主题时,先把
info.json里的版本号改低或加个明显标记,免得和官方更新混在一起,分不清改没改过。
最后留一个问题给你
主题这东西,永远是"别人的不如自己的香"。你现在用的是哪套主题?是 default2 的功能党,还是 minima 的极简派?或者已经动手改出了自己的版本?欢迎在评论区晒出你的界面截图,也可以说说你希望 OneNav 下一套主题长什么样——说不定下一个被做出来的,就是你的点子。🎨
【免费下载链接】onenav使用PHP + SQLite 3开发的书签管理系统,将浏览器书签集中式管理,做到一处部署,随处访问。项目地址: https://gitcode.com/gh_mirrors/on/onenav
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考