[themes]主题样式热
- 主题样式ID themes版本 1.9.12插件制作者 elm售价 20 积分853 行 / 45.7 KBHook / 路由 / 后台页自定义论坛配色和样式,支持导入、导出以及用户快速切换主题。收费插件安装说明购买后点击“授权码”获取一次性授权码;在后台 > 插件广场点击在线安装或更新,并填写该授权码。已购买用户更新免费:每次在线安装或更新前,重新点击“授权码”获取新的一次性授权码即可,无需再次购买;也可直接下载新版后用后台“插件上传”更新。尊重并感谢他人劳动,请勿传播代码。app/plugins/themes/plugin.php开发日志已有 6 条
个人独立维护项目。
主楼点赞与点评3charcoal-fire2026-08-18
nodebuy2026-08-18
elm2026-09-01
插件质量报告
插件:
themesHook 功能范围 循环 使用频率 文件读写 修改系统表 读写系统表 读写自己的表 page.head 全站页面 head 否 5 - - - 读 plugin_themes_user_prefs sidebar.feature_links 首页/侧栏快捷功能 否 5 - - - - admin.tabs 后台管理页标签栏(展示位置:后台Tab) 否 1 - - - - 颜色说明:黄色表示有数据读写,红色表示 Hook 在系统循环中执行,浅蓝色表示有文件写入。“列表跳过”表示回调在列表路径会提前返回,“回调内”表示操作位于回调自身或其帮助函数的循环体内。“文件批处理”表示逐个处理用户一次提交的文件,属于必要操作,不标记修正。只有操作实际处于需要优化的循环路径时,才会标记“修正❗️”。
数据字典
plugin_themes_user_prefs字段 类型 可空 默认值 约束 user_id uint 否 - 主键 preset_id key 否 - - variables text 否 - - custom_css text 否 - - updated_at uint 否 - - 明天审核一下
有个性!
非常好的插件。内置的暗夜模式再优化下
建议增加快捷功能 入口链接,让用户可以自己选择内置样式。
适合浅色系。深色系,其他插件自己输出的样式,照顾不到。是个头疼的问题。
这个深色系做的就比较不错
https://dev.bbs1.org/index.php喜欢,感谢提供
@admin #274 好的。其实这个主题插件就是为了可以换成适配自己论坛的魔剑配色,真正优化的只有一个配色,其他配色都没顾上看,哈哈。
@admin #307 已更新,晚上到家才看到。
小修复:发帖页面投票区背景色不一致。
更新:小小适配了一下博客样式。
🔍 插件审查报告(对照《AI 开发规则》与开发者文档)
🔒 安全问题
未发现明显问题。自定义 CSS 仅管理员可写,输出前已转义
</style>/</script>;预设名、颜色变量均经h()转义或白名单校验,未发现 SQL 注入、越权或未转义输出。⚡ 性能问题
未发现明显问题。
page.head每页仅一次按主键的用户偏好查询,未在红区钩子内读库,无 N+1 查询。🐛 功能/规范缺陷
- 版本号不一致:后台标题硬编码「v1.8.0」(plugin.php:466),manifest 已是 1.8.1(plugin.php:828),建议改用
$plugin['version']动态渲染。 - 自定义 CSS 仅转义
</style>/</script>,@import会被转成外链<link>(plugin.php:251-255),未限制协议或域名;建议对外链做 https 或域名白名单校验。 - 直接调用
mb_strlen/mb_substr(plugin.php:407)无function_exists降级,若环境未启用 mbstring 会致命错误;建议仿核心cut()加降级。
✅ 修复优先级
1 → 2 → 3:先修正版本号与 CSS 外链限制,再补充 mbstring 降级。均为低风险项。
- 版本号不一致:后台标题硬编码「v1.8.0」(plugin.php:466),manifest 已是 1.8.1(plugin.php:828),建议改用
🔍 插件审查报告(AI 自动审查,对照《AI 开发规则》与开发者文档;本插件未被 8/18 楼上 350 的报告覆盖,属独立首次审查)
插件:主题样式(themes)v1.8.1
🔒 安全问题
未发现明显安全问题。⚡ 性能问题
未发现明显问题。🐛 功能/规范缺陷
规范一致性建议:后台管理页函数体内未见显式调用核心 need_admin()(依赖核心 admin_page() 路由层统一鉴权兜底,当前不构成越权);涉及写操作时判断请求方式使用手写的 $_SERVER['REQUEST_METHOD'] === 'POST',效果等价于核心 require_post(),但写法与站内多数插件不一致。✅ 修复优先级
低优先级:建议在后台页面函数内补充显式 need_admin()/require_post() 调用,作为纵深防御,避免未来核心路由调整时失去这层保护;不影响当前功能与安全性。旧格式迁移:已将插件代码转存到开发日志,主题正文改为基础介绍。
大佬牛逼,插件适配速度真快
版本 1.9.0 更新:
一些小更新版本 1.9.1 更新:
去除博客皮肤设置功能,功能更单纯专一。版本 1.9.12 更新:
配色小修正