refactor: 死代码清理 + CDN SRI 加固 + 面包屑组件 + 代码规范文档
- 删除 7 个死模板文件 (products/services/quality/process/projects/customization/rfq) - 删除 13 个旧图片素材 (jpg/png/webp) - 新增 CDN SRI 完整性校验 (Bootstrap CSS/JS) - 新增面包屑导航模板组件 - 新增代码清理方案与代码审查标准文档 - 更新 README.md
This commit is contained in:
@@ -41,7 +41,7 @@
|
||||
| 案例详情 | `single-case.php` | 单个施工案例 |
|
||||
| 关于门店 | `page-about.php` | 门店介绍、环境展示、视频、服务保障 |
|
||||
| 常见问题 | `page-faq.php` | FAQ 手风琴 |
|
||||
| 预约/联系 | `page-contact.php` | 预约表单 + 门店信息 + 百度地图导航 |
|
||||
| 预约/联系 | `page-contact.php` | 门店信息 + 联系方式 + 百度地图导航 |
|
||||
|
||||
### 首页板块(5 个模板片段)
|
||||
|
||||
@@ -63,6 +63,10 @@
|
||||
|
||||
主题激活时自动将 Customizer 中的 7 个产品数据迁移为 `service` 文章。
|
||||
|
||||
### 面包屑导航
|
||||
|
||||
`template-parts/breadcrumb.php` 提供可复用的面包屑组件,接受 `$args['items']` 数组(每项含 `label` 和可选 `url`)。在服务详情、案例详情等内页中调用以展示层级导航路径。
|
||||
|
||||
## 自定义器(Customizer)
|
||||
|
||||
**门店首页** 面板包含以下板块:
|
||||
@@ -83,31 +87,23 @@
|
||||
|
||||
> 注:首页仅使用 5 个板块。其余板块(产品能力、定制选项、品质管控等)保留为 Customizer 配置源,同时 `service` CPT 激活时从这些配置迁移数据。
|
||||
|
||||
## 预约表单
|
||||
|
||||
预约/联系页面包含精简表单,收集启动对话所需的信息:
|
||||
|
||||
- 客户姓名和企业邮箱
|
||||
- 可选的 WhatsApp/电话和所需服务
|
||||
- 简要需求描述
|
||||
|
||||
**安全措施:**
|
||||
- WordPress nonce 验证
|
||||
- 隐藏反垃圾蜜罐字段
|
||||
- 速率限制(transient,防重复提交)
|
||||
- `wp_mail()` 发送预约邮件
|
||||
- 提交后跳转回表单页面并显示状态提示
|
||||
|
||||
服务项目页面和首页的"预约"按钮可通过 URL 参数 `?service=膜品名` 预填表单中的服务字段。
|
||||
|
||||
## 前端技术栈
|
||||
|
||||
- **Bootstrap 5.3**(CDN):响应式栅格、offcanvas 移动导航、手风琴、表单控件
|
||||
- **AOS**:滚动动画
|
||||
- **Colorbox**:图片灯箱
|
||||
- **Google Fonts**:Josefin Sans + Jost + Noto Sans SC(思源黑体)
|
||||
- **Colorbox**:图片灯箱(jQuery 依赖)
|
||||
- **Google Fonts**(`fonts.loli.net` 镜像):Josefin Sans + Jost + Noto Sans SC(思源黑体)
|
||||
- **jQuery**:由 WordPress 提供,主题不另行打包
|
||||
- CSS/JS 使用 `filemtime()` 版本号防缓存
|
||||
- **CDN SRI**:Bootstrap CSS/JS 加载时携带 `integrity` 完整性哈希和 `crossorigin` 属性,防止 CDN 劫持
|
||||
|
||||
## 安全措施
|
||||
|
||||
- 所有 PHP 文件以 `ABSPATH` 守卫开头
|
||||
- 所有输出经 `esc_html()` / `esc_url()` / `esc_attr()` 转义
|
||||
- Customizer 字段全部配置 `sanitize_callback`
|
||||
- RFQ 表单处理器含完整安全链:nonce 验证 + 蜜罐 + 速率限制 + 邮件头注入防护
|
||||
- 邮箱地址用 `antispambot()` 混淆
|
||||
- CDN 资源携带 SRI 完整性校验
|
||||
|
||||
## 文件结构
|
||||
|
||||
@@ -128,18 +124,21 @@ fragrance-trade/
|
||||
├── index.php / single.php / page.php / archive.php / 404.php
|
||||
├── inc/
|
||||
│ ├── defaults.php # 全中文安全默认值
|
||||
│ ├── setup.php # 主题初始化、资源加载
|
||||
│ ├── setup.php # 主题初始化、资源加载、SRI 加固
|
||||
│ ├── helpers.php # 工具函数(菜单回退、WhatsApp/邮件链接、通知)
|
||||
│ ├── cpt.php # 自定义文章类型注册 + 激活迁移
|
||||
│ ├── customizer.php # Customizer 面板和字段
|
||||
│ └── inquiry.php # 预约表单处理器
|
||||
├── template-parts/
|
||||
│ ├── home/ # 首页片段(hero/trust/service-teaser/case-teaser/cta + 旧板块)
|
||||
│ ├── home/ # 首页片段(hero/trust/service-teaser/case-teaser/cta + video/factory/documents/faq)
|
||||
│ ├── breadcrumb.php # 可复用面包屑导航组件
|
||||
│ ├── content.php / content-page.php / content-none.php
|
||||
├── assets/
|
||||
│ ├── css/ # normalize.css + vendor.css + theme.css
|
||||
│ ├── js/ # theme.js + plugins.js
|
||||
│ └── images/ # SVG 占位图 + 产品/门店图片
|
||||
├── CODE_CLEANUP_PLAN.md # 代码清理方案(5 阶段)
|
||||
├── CODE_REVIEW_STANDARD.md # 代码审查标准与流程
|
||||
└── languages/ # 翻译文件目录
|
||||
```
|
||||
|
||||
@@ -148,13 +147,30 @@ fragrance-trade/
|
||||
主题附带以下占位资源,上线前请替换为真实素材:
|
||||
|
||||
- 7 个产品 SVG 占位图(灰底虚线边框 + 中文标签)
|
||||
- 7 个产品 webp 图片
|
||||
- 4 个门店环境 SVG 占位图
|
||||
- 1 个视频封面 SVG
|
||||
- 1 个 Logo SVG
|
||||
- 6 张 Instagram 图片(jpg)
|
||||
- 3 张产品图片(jpg)
|
||||
- 7 张产品 webp 图片
|
||||
- 1 张工厂流程示意图(webp)
|
||||
|
||||
> 旧版图片素材(jpg 产品图、Instagram 图、工厂流程图等)已在代码清理中移除。
|
||||
|
||||
## 代码质量
|
||||
|
||||
### 代码清理
|
||||
|
||||
详见 [CODE_CLEANUP_PLAN.md](CODE_CLEANUP_PLAN.md),分 5 个阶段:
|
||||
|
||||
| 阶段 | 内容 | 状态 |
|
||||
|------|------|------|
|
||||
| 一 | 删除死模板 + 死图片 | ✅ 已完成 |
|
||||
| 二 | JS 依赖瘦身 | 待执行 |
|
||||
| 三 | 死表单处理器处理 | 待执行 |
|
||||
| 四 | CDN SRI 加固 | ✅ 已完成 |
|
||||
| 五 | Customizer 配置清理 | 待执行 |
|
||||
|
||||
### 代码审查
|
||||
|
||||
详见 [CODE_REVIEW_STANDARD.md](CODE_REVIEW_STANDARD.md),包含 WordPress 主题专项审查清单(安全/功能/性能/可维护性/前端质量)、优先级体系(🔴阻断 / 🟡建议 / 💭细节)和审查流程。
|
||||
|
||||
## 上线检查清单
|
||||
|
||||
|
||||
Reference in New Issue
Block a user