129 lines
3.2 KiB
Markdown
129 lines
3.2 KiB
Markdown
|
|
# 安装指南
|
|||
|
|
|
|||
|
|
## 前置要求
|
|||
|
|
|
|||
|
|
1. WordPress 5.0 或更高版本
|
|||
|
|
2. WooCommerce 3.0 或更高版本
|
|||
|
|
3. PHP 7.4 或更高版本
|
|||
|
|
4. M2Pool 支付系统后端(Go 服务)
|
|||
|
|
|
|||
|
|
## 安装步骤
|
|||
|
|
|
|||
|
|
### 1. 安装 WordPress 插件
|
|||
|
|
|
|||
|
|
1. 将 `integration/wordpress` 文件夹复制到 WordPress 的插件目录:
|
|||
|
|
```
|
|||
|
|
wp-content/plugins/m2pool-eth-payment/
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
2. 在 WordPress 后台激活插件:
|
|||
|
|
- 进入 `插件 > 已安装的插件`
|
|||
|
|
- 找到 "M2Pool ETH Payment Gateway"
|
|||
|
|
- 点击 "启用"
|
|||
|
|
|
|||
|
|
### 2. 配置插件
|
|||
|
|
|
|||
|
|
1. 进入 `设置 > M2Pool ETH 支付`
|
|||
|
|
2. 配置以下选项:
|
|||
|
|
- **API 地址**: 支付系统的 API 地址(如果使用 API Bridge,则为 `http://localhost:8080`)
|
|||
|
|
- **API 密钥**: 与后端系统的 `msgKey` 对应的密钥
|
|||
|
|
- **接收地址**: 用于接收支付的以太坊地址
|
|||
|
|
- **监听间隔**: 检查支付状态的间隔时间(建议 30-60 秒)
|
|||
|
|
|
|||
|
|
3. 保存设置
|
|||
|
|
|
|||
|
|
### 3. 配置 WooCommerce 支付网关
|
|||
|
|
|
|||
|
|
1. 进入 `WooCommerce > 设置 > 支付`
|
|||
|
|
2. 找到 "M2Pool ETH 支付"
|
|||
|
|
3. 点击 "管理"
|
|||
|
|
4. 启用支付方式并配置:
|
|||
|
|
- **标题**: 客户看到的支付方式名称
|
|||
|
|
- **描述**: 支付方式说明
|
|||
|
|
- **发送地址**: 发送支付的地址(可选)
|
|||
|
|
- **接收地址**: 接收支付的地址
|
|||
|
|
- **链名称**: 选择 ETH
|
|||
|
|
- **代币符号**: 选择 ETH 或 USDT
|
|||
|
|
|
|||
|
|
5. 保存更改
|
|||
|
|
|
|||
|
|
### 4. 设置 API Bridge(可选)
|
|||
|
|
|
|||
|
|
如果您的后端系统只支持 RabbitMQ,需要运行 API Bridge 服务:
|
|||
|
|
|
|||
|
|
1. 进入 `integration/wordpress/api-bridge` 目录
|
|||
|
|
2. 安装依赖:
|
|||
|
|
```bash
|
|||
|
|
go mod download
|
|||
|
|
```
|
|||
|
|
3. 编译:
|
|||
|
|
```bash
|
|||
|
|
go build -o api-bridge main.go
|
|||
|
|
```
|
|||
|
|
4. 运行:
|
|||
|
|
```bash
|
|||
|
|
./api-bridge
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
5. 在 WordPress 插件设置中,将 API 地址设置为 `http://localhost:8080`
|
|||
|
|
|
|||
|
|
## 测试支付
|
|||
|
|
|
|||
|
|
1. 在 WooCommerce 创建一个测试订单
|
|||
|
|
2. 选择 "ETH 支付" 作为支付方式
|
|||
|
|
3. 完成订单后,您会看到支付说明页面
|
|||
|
|
4. 向显示的地址支付指定金额的 ETH
|
|||
|
|
5. 系统会自动检测支付并更新订单状态
|
|||
|
|
|
|||
|
|
## Webhook 配置(推荐)
|
|||
|
|
|
|||
|
|
为了实时接收支付状态更新,建议配置 Webhook:
|
|||
|
|
|
|||
|
|
1. 在 WordPress 插件设置页面找到 Webhook URL
|
|||
|
|
2. 将此 URL 配置到您的支付系统中
|
|||
|
|
3. 当支付状态更新时,系统会自动通知 WordPress
|
|||
|
|
|
|||
|
|
Webhook URL 格式:
|
|||
|
|
```
|
|||
|
|
https://your-site.com/wp-json/m2pool-eth/v1/webhook
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 故障排除
|
|||
|
|
|
|||
|
|
### 支付状态不更新
|
|||
|
|
|
|||
|
|
1. 检查 API 地址是否正确
|
|||
|
|
2. 检查 API 密钥是否匹配
|
|||
|
|
3. 查看 WordPress 错误日志
|
|||
|
|
4. 确认后端服务正常运行
|
|||
|
|
|
|||
|
|
### 无法创建支付请求
|
|||
|
|
|
|||
|
|
1. 检查 API Bridge 是否运行(如果使用)
|
|||
|
|
2. 检查 RabbitMQ 连接是否正常
|
|||
|
|
3. 查看后端服务日志
|
|||
|
|
|
|||
|
|
### 订单状态不更新
|
|||
|
|
|
|||
|
|
1. 检查定时任务是否运行:
|
|||
|
|
- 进入 `工具 > 计划任务`
|
|||
|
|
- 查找 `m2pool_eth_check_payments`
|
|||
|
|
2. 手动触发支付检查(通过 AJAX)
|
|||
|
|
3. 检查数据库表 `wp_m2pool_eth_payments` 中的数据
|
|||
|
|
|
|||
|
|
## 数据库表
|
|||
|
|
|
|||
|
|
插件会自动创建以下数据库表:
|
|||
|
|
|
|||
|
|
- `wp_m2pool_eth_payments`: 存储支付记录
|
|||
|
|
|
|||
|
|
您可以通过 phpMyAdmin 或 WordPress 数据库工具查看和管理这些表。
|
|||
|
|
|
|||
|
|
## 支持
|
|||
|
|
|
|||
|
|
如有问题,请查看:
|
|||
|
|
- README.md - 详细文档
|
|||
|
|
- WordPress 错误日志
|
|||
|
|
- 后端服务日志
|
|||
|
|
|