wordpresspub/README.md

144 lines
3.3 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.

# WordPress 远程发布工具
这是一个用于远程操作 WordPress 网站的内容发布工具,通过 WordPress REST API 实现文章、分类、标签等内容的自动化管理。
## 功能特性
- 📝 **文章管理**: 创建、更新、删除文章
- 📂 **分类管理**: 创建和管理文章分类
- 🏷️ **标签管理**: 创建和管理文章标签
- 🖼️ **媒体管理**: 上传和管理媒体文件
- 🔐 **安全认证**: 使用 WordPress 应用密码进行安全认证
## 快速开始
### 1. 安装依赖
```bash
pip install -r requirements.txt
```
### 2. 配置环境变量
复制 `.env` 文件并填写你的 WordPress 站点信息:
```bash
cp .env.example .env
```
编辑 `.env` 文件:
```env
# WordPress 站点配置
WORDPRESS_URL=https://your-wordpress-site.com
WORDPRESS_USERNAME=your-username
WORDPRESS_APP_PASSWORD=your-app-password
```
### 3. 测试连接
```bash
python test_wp_api.py
```
### 4. 发布内容
```bash
python publish_post.py
```
## 文件说明
- **`test_wp_api.py`**: API 连接测试脚本
- **`wp_api_examples.py`**: 完整的 API 操作示例
- **`publish_post.py`**: 简化的内容发布工具
- **`.env`**: 环境配置文件
- **`requirements.txt`**: Python 依赖包
## 使用示例
### 发布文章
```python
from publish_post import WordPressPublisher
wp = WordPressPublisher()
# 发布文章
result = wp.publish_post(
title="我的新文章",
content="<p>这是文章内容</p>",
excerpt="文章摘要",
status="publish" # 或 "draft" 保存为草稿
)
```
### 创建分类和标签
```python
# 创建分类
category = wp.create_category("技术分享", "技术相关的文章分类")
# 创建标签
tag = wp.create_tag("Python", "Python 编程相关")
# 发布文章时指定分类和标签
wp.publish_post(
title="Python 教程",
content="<p>Python 编程教程内容</p>",
categories=[category['id']],
tags=[tag['id']]
)
```
## WordPress 应用密码设置
1. 登录 WordPress 后台
2. 进入 **用户 -> 个人资料**
3. 滚动到 **应用密码** 部分
4. 输入应用名称(如 "API 工具"
5. 点击 **添加新应用密码**
6. 复制生成的密码到 `.env` 文件中
## API 权限要求
确保你的 WordPress 用户具有以下权限:
- 发布文章
- 编辑文章
- 删除文章
- 管理分类和标签
- 上传媒体文件
通常需要 **编辑者****管理员** 角色。
## 注意事项
1. **HTTPS**: 建议使用 HTTPS 连接以确保安全
2. **应用密码**: 使用应用密码而非普通登录密码
3. **权限**: 确保用户具有相应的操作权限
4. **测试**: 建议先在测试环境中验证功能
## 故障排除
### 认证失败
- 检查用户名和应用密码是否正确
- 确认应用密码格式正确(移除空格)
- 验证用户是否有足够权限
### 连接超时
- 检查网络连接
- 确认 WordPress 站点是否正常运行
- 验证 URL 是否正确
### 权限不足
- 确保用户为编辑者或管理员角色
- 检查 WordPress REST API 是否启用
## 相关资源
- [WordPress REST API 官方文档](https://developer.wordpress.org/rest-api/)
- [WordPress 应用密码设置指南](https://wordpress.org/support/article/application-passwords/)
---
**项目目标**: 为远程 WordPress 网站提供简单、安全的内容发布解决方案。