本文由 FlintHub 开发文档归档发布。原始文档日期见标题前缀,来源:8月12日的备份/update/README-部署说明.md。
SoSite 整改更新包(2026-08-07)
本目录包含 1 个新增 + 31 个修改 的文件,按原目录结构放置。
覆盖方式:将本目录内所有文件按相同路径上传覆盖到站点根目录(如 D:/phpstudy_pro/WWW 或服务器对应路径)。
生成环境:PHP 8.2 / MySQL 8.0,代码仅改动视图/CSS/注释,无数据库结构变更、无 Composer 依赖变更。
一、覆盖前必须做的事
1. 备份服务器现状
把服务器上以下目录整体备份一份(zip 即可):
app/assets/css/protected/(至少protected/database/)
2. 删除 9 个文件(本次整改确认的孤儿/死文件)
这些文件不包含在 update 包内,覆盖完成后需要手动删除:
| # | 待删除文件 | 原因 |
|---|---|---|
| 1 | app/Views/admin/settings.php | 孤儿视图(已被 settings_basic 等 4 个视图替代) |
| 2 | app/Views/emails/verify_email.txt | 孤儿模板(正文已内联到 AuthController) |
| 3 | protected/rebuild_runtime.php | 孤儿脚本(功能已并入 MaintenanceController) |
| 4 | protected/database/schema_mysql.sql | V2.x 遗留建库脚本 |
| 5 | protected/database/schema_sqlite.sql | V2.x 遗留建库脚本 |
| 6 | assets/css/blog.css | 死文件(全库零引用) |
| 7 | assets/css/forum.css | 旧模板 CSS(引用已全部移除) |
| 8 | assets/css/pages.css | 旧模板 CSS(引用已全部移除) |
| 9 | assets/css/layout.css | 旧模板 CSS(引用已全部移除) |
⚠️ 若服务器上这些文件当前仍被引用(例如旧视图没同步覆盖),先覆盖 update 包再删除,顺序不能反。
二、本包包含的文件清单(32 个)
新增(1)
app/Views/errors/404.php—— 通用 404 视图(修复 user_profile 悬空引用)
修改:前台视图(9)
app/Views/blog/detail.php—— 移除 forum.css 引用;内联样式→mn-* 工具类app/Views/thread/show.php—— 移除 forum.css 引用;19 处内联样式收敛app/Views/plugins/qa/question/show.php—— 移除 forum.css 引用app/Views/profile/index.php—— 移除 pages.css 引用app/Views/plugins/dice/index.php—— 移除 layout.css 引用app/Views/plugins/quiz_duel/create.php—— 移除 layout.css 引用app/Views/plugins/quiz_duel/detail.php—— 移除 layout.css 引用app/Views/plugins/quiz_duel/index.php—— 移除 layout.css 引用app/Views/plugins/quiz_duel/my.php—— 移除 layout.css 引用
修改:后台视图(7)
app/Views/admin/search_settings.php/blog_manage.php/threads.php/categories.php/groups.php/levels.php/permissions.php—— 静态内联样式收敛为 admin.css 工具类
修改:Helpers(7)—— 零调用方法加 @deprecated 标注(纯注释,不影响逻辑)
app/Helpers/RateLimiter.php、Points.php、Settings.php、Search.php、Tag.php、Theme.php、Permission.php
修改:Models(6)—— 零调用方法加 @deprecated 标注(纯注释)
app/Models/Blog.php、BlogComment.php、Post.php、Thread.php、User.php、Message.php
修改:CSS(2)
assets/css/modern.css—— 迁移 .post-text-content 基础规则;新增 13 个 mn-* 工具类assets/css/admin.css—— .stat-card 加 .admin-stats 前缀;新增 22 个工具类
三、部署步骤(推荐顺序)
- 备份服务器
app/、assets/css/、protected/ - 上传本 update 包全部文件,按路径覆盖
- 删除第一节列出的 9 个文件
- 清空模板编译缓存:
protected/cache/templates/目录下文件(模板引擎会自动重建,删除缓存可立即生效) - 浏览器回归验证(见下)
可选:清一下
protected/settings_cache.php与protected/cache/下的计数缓存(会自动重建,不清也不影响)。
四、回归验证清单
| 页面 | 检查点 |
|---|---|
/thread/xxx 帖子详情 | 正文样式、引用、投票、删除按钮颜色(红色) |
/blog/xxx 博客详情 | 标题、作者栏、评论、封面 |
/profile 个人中心 | 头像、统计卡、三个 tab 切换 |
/dice、/quiz-duel、/qa 插件页 | 布局、按钮、分页 |
/admin 后台仪表盘 | 4 个统计卡渐变样式 |
/admin/settings/search | 重建进度条(可触发一次重建查看) |
/admin/groups、/admin/levels | 颜色选择器、徽章 |
/u/99999 不存在的用户 | 显示新 404 页面(而非报错) |
| 前台分页 | 论坛/博客/搜索/标签列表页的 mn-pagination 分页 |
若发现样式异常,优先检查浏览器控制台是否有 404(可能旧 CSS 引用没删干净),并把具体页面反馈给维护者。
本包由 SoSite 模板样式与代码质量整改(2026-08-07)生成,未修改任何数据库结构。