Files
wordpress-theme-aksrt/README.md
T
kate522 ce1c13b947 refactor(classes): organize inc/classes into domain folders
Move ~94 root class shells and root *-traits into domain directories
(core, auth, user, credits, content, payment/gateways, forum, shop,
sms, ai, messages, extensions, widgets, settings, admin). Update
bootstrap require paths, co-locate traits with owners, fix forum/user
relative requires, drop duplicate shop controller requires, and wire
home-modules load. Path-only; class names and init order unchanged.
2026-07-17 11:11:57 +08:00

228 lines
9.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AKSRT WordPress Theme
> **版本**: 3.4.0-dev | **架构**: 原生 PHP + WordPress (非 headless)
> **要求**: WordPress >= 6.4 | PHP >= 8.1
---
## 项目概述
AKSRT 是一款现代化的 WordPress 主题,采用**原生 WordPress 主题架构**开发(PHP + HTML + CSS + JavaScript),不依赖 REST API 进行前端渲染。
### 核心特性
- **自定义管理面板 (SPA)** — Vue3 + Vite + Naive UI 的 12 个一级业务域后台
- **统一设置契约** — Schema 驱动表单、域控制器、导入导出、按域重置、迁移状态与健康检查
- **支付/下载主线** — 下载/付费内容中心、充值/VIP/分成/返佣/网关结构、10 分钟下载 token
- **用户与增长** — OAuth 登录、邮箱验证门禁、签到奖励、邀请奖励、等级/徽章/认证/举报结构
- **内容与交互** — 首页模块化、归档/搜索/404、单篇资源页、评论审核与通知中心
- **运维工具** — 配置导出导入、dry-run 校验、邮件回滚、数据库与环境诊断
- **自定义页面模板**:About / Friends / Login / Profile / Register
- **响应式设计**
---
## 文件结构
```
AKSRT-theme/
├── functions.php # 入口文件(精简版:常量+bootstrap加载+实例初始化)
├── style.css # WordPress 主题声明头
│
├── *.php # WP 核心模板保留根目录
│ ├── index.php # 首页(文章列表 Loop)
│ ├── single.php # 文章详情页
│ ├── page.php # 默认页面模板
│ ├── front-page.php # 首页静态页面
│ ├── archive.php # 归档页
│ ├── author.php # 作者存档
│ ├── search.php # 搜索结果
│ ├── 404.php # 错误页
│ ├── header.php / footer.php # 页头/页脚
│ ├── sidebar.php # 侧边栏
│ └── comments.php # 评论模板
│
├── inc/ # 核心代码目录
│ ├── bootstrap.php # 自动加载器(统一 require 所有模块)
│ ├── core-hooks.php # 核心功能钩子(Gravatar/SMTP/评论/CPT等)
│ │
│ ├── classes/ # ← 类文件按领域目录组织
│ │ ├── core/ # 主题壳层(setup/scripts/templates/SEO/DB…)
│ │ ├── frontend/ # 前端渲染辅助(inline style / custom code…)
│ │ ├── settings/ # 设置门面 + 运行时 delegates
│ │ ├── admin/ # SPA 编排 + 域控制器 + schema + native ops
│ │ ├── auth/ # 登录/OAuth/验证码/审核/邮箱
│ │ ├── user/ # 用户中心/主页/徽章/等级/关注
│ │ ├── credits/ # 积分/钱包/签到/邀请
│ │ ├── content/ # 下载 token / 付费内容 / VIP / 可见性
│ │ ├── payment/ # 订单/网关/售后/物流/充值卡/分成
│ │ │ └── gateways/ # 支付宝/微信/PayPal/Stripe
│ │ ├── forum/ # 论坛服务 + 收银台 + meta box
│ │ ├── shop/ # 商城服务 + meta box + 评价
│ │ ├── sms/ # 短信编排 + 各云厂商 adapter
│ │ ├── ai/ # AI / SEO prompt
│ │ ├── messages/ # 站内信/私信/公告/举报
│ │ ├── extensions/ # MeiliSearch / 推送 / IP / 内容审核
│ │ └── widgets/ # 小工具实现 + 注册中心
│ │
│ └── helpers/ # ← 辅助函数文件
│ ├── aksrt-icons.php # SVG 图标系统(读取/缓存/映射)
│ ├── aksrt-template-tags.php # 模板标签(Banners/友链/Logo/SEO Head)
│ └── aksrt-frontend-tags.php # 前端标签(阅读时长/面包屑/评论回调)
│
├── templates/ # 模板目录(与 inc/ 隔离)
│ ├── pages/ # 自定义页面模板
│ │ ├── page-about.php # 关于页面
│ │ ├── page-friends.php # 友链墙
│ │ ├── page-login.php # 登录页面
│ │ ├── page-profile.php # 用户中心
│ │ └── page-register.php # 注册页面
│ │
│ └── parts/ # 可复用模板片段
│ ├── content-post-card.php # 文章卡片组件
│ ├── post-card.php # 文章卡片(旧版兼容)
│ └── comments.php # 评论列表组件
│
└── assets/ # 静态资源(前后端隔离)
├── css/
│ ├── frontend/ # 前端样式
│ │ ├── main.css # 主样式表
│ │ └── variables.css # CSS 变量(颜色/间距/字体)
│ ├── admin/ # 后台专用样式
│ │ └── admin-panel.css # SPA 容器面板样式
│ └── shared/ # 前后端共用
│ └── captcha.css # 人机验证样式
│
├── js/
│ └── main.js # 前端交互脚本
│
├── img/
│ └── icons/ # 本地 SVG 图标(17个)
│
└── admin/ # Vue3 SPA 后台构建产物
└── build/ # Vite 构建输出(ESM)
```
---
## 安装方式
### 方式一:直接上传(推荐)
1. 将整个 `AKSRT-theme` 文件夹上传到 `wp-content/themes/`
2. WordPress 后台 → **外观** → **主题** → 找到 **AKSRT** → **激活**
### 方式二:ZIP 打包上传
压缩为 `.zip` 后通过 WordPress 后台上传。
---
## 使用指南
### 1. 创建基础页面
激活主题后创建以下页面并选择对应模板:
| 页面名称 | 选择模板 | 路径建议 |
|---------|---------|---------|
| 关于我 | **About** | `/about` |
| 友情链接 | **Friends** | `/friends` |
| 个人中心 | **Profile** | `/profile` |
登录/注册页面会自动检测,无需手动创建。
### 2. 后台配置路径
WordPress 后台左侧 **Admin Bar** → ⚡ **AKSRT 主题设置**
或直接访问:`/wp-admin/admin.php?page=aksrt-settings`
### 3. 当前后台域
- `全局&功能`:品牌、布局、搜索、自定义代码、邮件
- `页面&显示`:首页、分类、标签、用户主页、404/搜索结果
- `文章&列表`:列表、缩略图、单篇、筛选、评论
- `功能&权限`:审核、验证码、评论/附件/下载权限
- `用户&互动`:登录注册、OAuth、通知、签到、认证、等级、徽章、举报、积分
- `支付&付费`:下载/付费内容中心、余额充值、VIP、创作分成、推广返佣、收款接口
- `备份&导入`:导入导出、健康检查、迁移状态、邮件回滚
---
## 开发说明
### Settings Facade 分层
- `AKSRT_Settings` 仍是主题设置的**唯一静态 facade**,外部调用方式保持 `AKSRT_Settings::*`
- 具体运行时 getter 已按领域拆分到 `inc/classes/settings/`,例如:
- `class-aksrt-settings-theme-search.php`
- `class-aksrt-settings-post-display.php`
- `class-aksrt-settings-home-cms.php`
- `class-aksrt-settings-user-runtime.php`
- `class-aksrt-settings-integration.php`
- `class-aksrt-settings-display-runtime.php`
- `class-aksrt-settings-extension-runtime.php`
- `class-aksrt-settings-credits-runtime.php`
- `class-aksrt-settings-category-runtime.php`
- `class-aksrt-settings-forum-shop.php`
- `class-aksrt-settings-capabilities.php`
- `inc/bootstrap.php` 会先加载 `settings/class-aksrt-settings.php`,再按领域加载这些 delegate 类
- 新增设置运行时逻辑时,优先放入对应 settings 子类;仅把聚合输出、统一入口和跨域装配保留在 `AKSRT_Settings`
### 添加新辅助函数
将函数文件放入 `inc/helpers/`,在 `bootstrap.php` 阶段1 加载。
### 添加新页面模板
将 `page-{name}.php` 放入 `templates/pages/`,并在 `class-aksrt-templates.php` 中注册。
### CSS 组织规范
| 目录 | 用途 | 加载场景 |
|------|------|---------|
| `css/frontend/` | 前端公共样式 | 所有前台页面 |
| `css/admin/` | 后台管理样式 | 仅 AKSRT 设置页面 |
| `css/shared/` | 共用组件样式 | 前后端按需加载(如验证码) |
---
## OAuth 第三方登录配置
### 支持的平台
GitHub | Gitee | QQ | Google
:---:|:---:|:---:|:---:
✅ | ✅ | ✅ | ✅
### 回调地址格式
```
https://你的域名.com/?aksrt_oauth_callback={provider}
```
`{provider}`: `github` / `gitee` / `qq` / `google`
---
## 技术栈
- **后端**: PHP 8.1+ / WordPress 6.4+
- **前端**: HTML5 / CSS3 (CSS Variables) / Vanilla JavaScript
- **图标**: 本地 SVG 图标 + 按需加载
- **字体**: Manrope + Source Serif 4 (Google Fonts)
- **后台**: Vue3 + Vite + NaiveUI (SPA)
---
## 许可证
MIT License
---
## 作者
Kate (Lexo0522)