refactor: 多页面门店重构 — CPT + 页面模板 + README 更新

- CPT: service(服务项目) + case(案例作品集) + case_type 分类
- 页面: 关于门店/常见问题/预约联系 + archive/single 模板
- 首页精简为 hero+trust+service-teaser+case-teaser+cta
- 主题激活自动迁移 Customizer 产品数据为 service 文章
- 预约表单: nonce+honeypot+rate-limit, URL 参数预填服务
- 联系页: 门店地址/电话/营业时间/百度地图导航
- Customizer 面板改为门店语境(13 板块)
- header CTA 改为预约, helpers 更新为门店口径
- README.md 全面更新为门店多页面架构文档
This commit is contained in:
2026-07-24 15:37:40 +08:00
parent 2a64ce8daa
commit 8a2890f8b4
31 changed files with 1427 additions and 837 deletions
+141 -78
View File
@@ -1,114 +1,177 @@
# B2B Trade — 汽车贴膜企业 B2B 主题
# B2B Trade — 汽车贴膜门店 WordPress 主题
B2B Trade 是一款面向 OEM、ODM 和贴牌汽车贴膜制造商的经典 WordPress 主题。专为帮助海外品牌方、进口商、经销商、零售商和项目采购方评估生产能力并提交合格询价而设计
专业汽车贴膜门店(面向终端车主)的经典 WordPress 主题。支持服务项目展示、施工案例作品集、在线预约联系,适配移动端
本主题不依赖 WooCommerce,不含购物车、价格、结账或在线下单流程。产品卡片是工厂生产参考案例,引导买家进入询价表单。附带的参考图片使用浅灰色 SVG 占位符,上线前请替换为实际产品图片。
## 项目说明
本主题面向汽车贴膜门店(TPU 保护膜 / 彩色改色膜 / 隔热防爆膜等),不是 B2B 代工厂模板。站点采用多页面架构 + 自定义文章类型,首页为落地页,引导车主浏览服务、查看案例并预约到店。
> 仓库名 `fragrance-trade` 为历史遗留(原是香水贸易模板),代码标识符(文本域 `fragrance-trade`、CSS 前缀 `fragrance-`、PHP 函数前缀 `fragrance_trade_`)保持不变,不影响功能。
## 环境要求
- WordPress 6.5 或更高版本
- PHP 7.4 或更高版本
- WordPress 6.5+
- PHP 7.4+
- 生产环境建议使用 HTTPS 和认证 SMTP
## 安装
1.`fragrance-trade` 文件夹复制到 `wp-content/themes/`
2.**外观 → 主题** 中激活 **B2B Trade**
3. **外观 → 自定义 → 站点身份** 中设置站点标题和自定义 Logo。
4. 创建菜单并分配到 **主导航**。未分配时主题使用单页 B2B 回退菜单。
5. 打开 **外观 → 自定义 → B2B 企业首页**,将所有演示文案和图片替换为经验证的工厂信息。
3. 主题激活时自动完成初始化:
- 注册 `service`(服务项目)和 `case`(案例作品)两个自定义文章类型
- 将 Customizer 中的 7 个产品数据迁移为 `service` 文章
- 自动创建首页、关于门店、常见问题、预约/联系四个页面
- 将首页设置为静态首页
4. **重要:** 激活后进入 **设置 → 固定链接**,点击"保存更改"刷新路由规则。
5.**外观 → 自定义 → 站点身份** 中设置站点标题和 Logo。
6.**外观 → 菜单** 中创建导航菜单并分配到 **主导航**
7. 打开 **外观 → 自定义 → 门店首页**,将所有演示文案替换为真实门店信息。
## 首页架构
## 站点架构
首页遵循 B2B 采购方的决策路径:
### 页面结构
1. 制造商定位与询价入口
2. 工厂合作证明点
3. OEM/ODM 和贴牌服务
4. 产品制造能力
5. 膜料、颜色和包装定制
6. 工厂证明与可选工厂参观视频
7. 品质管控环节
8. 从打样到发货的项目流程
9. 典型采购方项目案例
10. 文档与出口支持
11. 起订量、打样、包装和文件常见问题
12. 合格询价表单
| 页面 | 模板 | 说明 |
|------|------|------|
| 首页 | `front-page.php` | 落地页:Hero + 信任栏 + 服务项目预览 + 案例预览 + CTA |
| 服务项目列表 | `archive-service.php` | 展示全部服务项目(膜品) |
| 服务项目详情 | `single-service.php` | 单个膜品详情 |
| 案例作品列表 | `archive-case.php` | 施工案例作品集,支持按分类筛选 |
| 案例详情 | `single-case.php` | 单个施工案例 |
| 关于门店 | `page-about.php` | 门店介绍、环境展示、视频、服务保障 |
| 常见问题 | `page-faq.php` | FAQ 手风琴 |
| 预约/联系 | `page-contact.php` | 预约表单 + 门店信息 + 百度地图导航 |
## 自定义器板块
### 首页板块(5 个模板片段)
**B2B 企业首页** 面板管理
`front-page.php` 组装以下片段(来自 `template-parts/home/`
- 首屏定位、按钮和图片
- 四个信任/证明点
- 四个 OEM/ODM 服务卡片
- 七个工厂生产产品参考卡片及图片
- 八个定制选项
- 工厂说明、证明点和四张图片
- 工厂参观视频链接和封面
- 六个品质管控环节
- 八个项目流程步骤
- 三个项目案例
- 四个文档卡片
- 八条 B2B 常见问题
- 询价标题和提交按钮文字
- 询价收件邮箱、WhatsApp 和社交链接
1. `hero` — 首屏定位与行动按钮
2. `trust` — 信任栏(4 个证明点
3. `service-teaser` — 服务项目预览(从 `service` CPT 读取最新 3 条)
4. `case-teaser` — 案例预览(从 `case` CPT 读取最新 3 条)
5. `cta` — 行动召唤板块
指标、认证、起订量、交期、产能、出口市场和可用文件必须在工厂验证后方可发布。
### 自定义文章类型
## 询价表单
| CPT | 功能 | URL |
|-----|------|-----|
| `service` | 服务项目 / 膜品(TPU保护膜、彩色改色膜、隔热防爆膜等) | `/services/` |
| `case` | 施工案例作品集 | `/cases/` |
| `case_type` | 案例分类(taxonomy,挂在 `case` 上) | `/case-type/` |
精简的询价表单仅收集启动对话所需的信息:
主题激活时自动将 Customizer 中的 7 个产品数据迁移为 `service` 文章。
- 采购方姓名和企业邮箱
- 可选的公司名称和 WhatsApp/电话
- 所需产品或服务
## 自定义器(Customizer
**门店首页** 面板包含以下板块:
- 首屏定位(眉标、主标题、简介、双按钮)
- 信任栏(4 个证明点)
- 服务项目(4 张服务卡片)
- 产品能力(7 个产品参考卡片及图片)
- 定制选项(8 个定制项)
- 门店环境与参观(简介、4 张门店图片、视频链接)
- 品质管控(6 个品质步骤)
- 项目流程(8 个流程步骤)
- 项目案例(3 个案例,可开关显示)
- 文档支持(4 个文档卡片,可开关显示)
- 常见问题(8 条 FAQ,可开关显示)
- 预约表单(标题、简介、按钮文字)
- 联系方式与社交链接(收件邮箱、WhatsApp、门店地址、电话、营业时间、地图嵌入、社交媒体链接)
> 注:首页仅使用 5 个板块。其余板块(产品能力、定制选项、品质管控等)保留为 Customizer 配置源,同时 `service` CPT 激活时从这些配置迁移数据。
## 预约表单
预约/联系页面包含精简表单,收集启动对话所需的信息:
- 客户姓名和企业邮箱
- 可选的 WhatsApp/电话和所需服务
- 简要需求描述
表单处理器验证 WordPress nonce,拒绝隐藏反垃圾字段,校验四个必填项,应用隐私保护的速率限制,并通过 `wp_mail()` 发送询价邮件。
**安全措施:**
- WordPress nonce 验证
- 隐藏反垃圾蜜罐字段
- 速率限制(transient,防重复提交)
- `wp_mail()` 发送预约邮件
- 提交后跳转回表单页面并显示状态提示
生产环境请配置认证 SMTP 或事务性邮件插件。上线前请测试有效提交、无效邮箱和重复提交
服务项目页面和首页的"预约"按钮可通过 URL 参数 `?service=膜品名` 预填表单中的服务字段
## 工厂内容清单
## 前端技术栈
上线前请准备并验证以下内容:
- **Bootstrap 5.3**CDN):响应式栅格、offcanvas 移动导航、手风琴、表单控件
- **AOS**:滚动动画
- **Colorbox**:图片灯箱
- **Google Fonts**Josefin Sans + Jost + Noto Sans SC(思源黑体)
- **jQuery**:由 WordPress 提供,主题不另行打包
- CSS/JS 使用 `filemtime()` 版本号防缓存
- 公司法定名称和工厂地址
- 成立年份、占地面积、员工人数和产能
- 支持的膜料类型、颜色和表面工艺
- 起订量、样品政策和生产交期
- 工厂、涂布、分切、质检和仓库照片
- 品质管控流程和批次记录
- 认证及每份证书上的确切实体名称
- 各目的地市场的可用文件
- 出口市场和可披露的项目案例
## 文件结构
如某项数字或证书无法验证,请保留主题的安全通用文案,不要发布未经支持声明的内容。
```
fragrance-trade/
├── functions.php # 加载 6 个 inc/ 模块
├── front-page.php # 首页(5 个模板片段)
├── header.php # 导航栏 + offcanvas 移动导航
├── footer.php # 页脚 + 联系/社交链接
├── style.css # 主题信息头 + 基础样式
├── archive-service.php # 服务项目列表
├── single-service.php # 服务项目详情
├── archive-case.php # 案例列表(支持分类筛选)
├── single-case.php # 案例详情
├── page-about.php # 关于门店
├── page-faq.php # 常见问题
├── page-contact.php # 预约/联系
├── index.php / single.php / page.php / archive.php / 404.php
├── inc/
│ ├── defaults.php # 全中文安全默认值
│ ├── setup.php # 主题初始化、资源加载
│ ├── helpers.php # 工具函数(菜单回退、WhatsApp/邮件链接、通知)
│ ├── cpt.php # 自定义文章类型注册 + 激活迁移
│ ├── customizer.php # Customizer 面板和字段
│ └── inquiry.php # 预约表单处理器
├── template-parts/
│ ├── home/ # 首页片段(hero/trust/service-teaser/case-teaser/cta + 旧板块)
│ ├── content.php / content-page.php / content-none.php
├── assets/
│ ├── css/ # normalize.css + vendor.css + theme.css
│ ├── js/ # theme.js + plugins.js
│ └── images/ # SVG 占位图 + 产品/门店图片
└── languages/ # 翻译文件目录
```
## 前端行为
## 占位资源
- Bootstrap 提供响应式栅格、offcanvas 导航、手风琴和表单控件。
- WordPress 提供 jQuery;主题不另行打包。
- AOS 和 Colorbox 仅在其 API 可用时初始化。
- 本地 CSS 和 JavaScript 使用文件修改时间版本号防止浏览器缓存过期。
- 产品参考按钮预填询价表单中的产品字段。
- 七个附带的参考产品使用 SVG 占位图,上线前请替换为实拍产品图。
- 工厂流程封面为通用示意图,非特定车间实拍;有实拍素材时请替换。
- 布局包含显式的 `min-width: 0` 栅格边界和移动端水平溢出防护。
主题附带以下占位资源,上线前请替换为真实素材:
## 生产验证
- 7 个产品 SVG 占位图(灰底虚线边框 + 中文标签)
- 4 个门店环境 SVG 占位图
- 1 个视频封面 SVG
- 1 个 Logo SVG
- 6 张 Instagram 图片(jpg
- 3 张产品图片(jpg
- 7 张产品 webp 图片
- 1 张工厂流程示意图(webp
部署后请验证:
## 上线检查清单
1. 首页清晰标识公司为汽车贴膜制造商而非零售品牌。
2. 所有工厂指标、照片、品质声明和文件真实有效。
3. 导航可达服务、产品、工厂、品质、流程和询价。
4. 产品参考按钮正确预填询价产品字段。
5. 精简询价邮件成功送达。
6. 移动端无水平滚动,所有表单字段适配视口。
7. 键盘焦点、跳转链接、标签、手风琴控件和图片替代文本保持可用。
8. 常规文章、页面、归档、搜索和 404 路由正常渲染。
1. 在 Customizer 中将所有演示文案替换为真实门店信息
2. 替换所有 SVG 占位图为实拍照片
3. 配置认证 SMTP 或事务性邮件插件
4. 测试预约表单提交、无效邮箱、重复提交
5. 检查移动端无水平滚动
6. 验证固定链接路由(`/services/``/cases/``/about/``/faq/``/contact/`
7. 确认导航菜单链接正确
8. 测试键盘焦点、跳转链接、图片替代文本等无障碍项
## Git 仓库
- **远程仓库**http://git.xgouo.cn/zhs123/car-t-t.git
- **分支**main
## 许可证
B2B Trade 基于 GNU General Public License v2 or later 许可。打包的第三方前端资源保留其各自许可证。
GNU General Public License v2 or later。打包的第三方前端资源保留其各自许可证。