# LeSeo - 一个轻量的WordPress SEO插件

一款简单、实用且有温度的 WordPress 性能优化与 SEO 插件。

[![WordPress](https://img.shields.io/badge/WordPress-5.9.1%2B-blue.svg)](https://wordpress.org/)
[![PHP](https://img.shields.io/badge/PHP-7.0%2B-purple.svg)](https://php.net/)
[![License](https://img.shields.io/badge/License-GPLv2-green.svg)](http://www.gnu.org/licenses/gpl-2.0.html)

---

## 简介

LeSeo 是一个比较全面、免费的 WordPress SEO 插件，集成了性能优化、内容优化、搜索推送、静态分离等多项实用功能，帮助站长轻松提升网站速度与搜索引擎表现。

**作者：** 老蒋和他的伙伴们  
**公众号：** 老蒋朋友圈

---

## 主要功能

### 一、WordPress 性能优化

- **禁用古登堡编辑器** - 恢复经典编辑器体验
- **禁止文章自动保存** - 减少数据库写入
- **禁止自动升级** - 手动控制 WordPress 版本更新
- **禁止 RSS 订阅** - 防止被 RSS 阅读器采集
- **禁止字符转码** - 保留原始文本格式
- **禁止 JSON/REST API** - 减少爬虫抓取
- **禁止小工具样式** - 恢复原始小工具
- **禁止 XML-RPC** - 降低被攻击风险
- **禁止离线编辑端口** - 防止外部推送文章
- **禁止 EMOJI 表情** - 减少站内体积

### 二、WordPress 加速优化

- **上传图片重命名** - 按时间戳重命名，避免中文文件名
- **禁止裁剪大图** - 禁止 2560px 以上图片自动裁剪
- **禁止垃圾评论** - 评论需含中文，过滤日文
- **禁止生成缩略图** - 减少服务器资源占用
- **压缩 HTML** - 压缩前端 HTML 代码
- **精简头部代码** - 移除不必要的 head 标签
- **移除 CSS/JS 版本号** - 精简资源加载
- **禁止前端搜索** - 可改用站外搜索接口

### 三、WordPress 内容优化

- **图片自动本地化** - 复制外部图片粘贴时自动下载到本地
- **移除图片 srcset/size** - 移除响应式图片标签
- **解除图片宽高限制** - 灵活控制图片显示
- **移除 wp-block-library-css** - 提高加载速度
- **禁止复制和右键** - 保护内容不被复制

### 四、WordPress 搜索推送

- **百度普通收录** - 一键提交链接至百度
- **百度快速收录** - 支持快速收录 API
- **文章发布时推送** - 编辑文章时可勾选推送选项
- **手动批量提交** - 支持批量提交链接

### 五、WordPress 附加功能

- **自定义头部代码** - 在 `wp_head` 插入自定义 JS/HTML
- **自定义底部代码** - 在 `wp_footer` 插入自定义代码
- **自定义 CSS** - 添加全站自定义样式
- **robots.txt 自定义** - 自定义 robots.txt 内容

### 六、WordPress 静态分离

支持将媒体文件上传至对象存储，实现静态资源分离：

- 阿里云 OSS
- 腾讯云 COS
- 七牛云
- 又拍云
- 亚马逊云 S3
- CloudFlare R2

---

## SEO 功能

- **TDK 自定义** - 首页、分类、标签、文章页独立 SEO 设置
- **Open Graph** - 支持社交分享预览
- **Canonical 链接** - 避免重复内容
- **页面反斜杠** - URL 规范化
- **隐藏分类 Category** - 缩短 URL 长度
- **图片自动 ALT** - 自动为图片添加 alt 和 title
- **自动 TAG 内链** - 文章内自动添加标签链接
- **网站地图** - 自定义 sitemap 支持

---

## 系统要求

| 项目 | 要求 |
|------|------|
| WordPress | 5.9.1 及以上 |
| PHP | 7.0 及以上 |
| 测试版本 | WordPress 6.8.1 |

---

## 安装方法

1. 将 `leseo` 文件夹上传至 `/wp-content/plugins/` 目录
2. 在 WordPress 后台 **插件** 列表中激活 LeSeo
3. 进入 **LeSeo 设置** 配置插件参数
4. 详细设置教程：[乐在云 - LeSeo 插件设置介绍](https://www.lezaiyun.com/817.html)

---

## 目录结构

```
leseo/
├── leseo.php              # 主插件文件
├── leseo-admin-options.php # 后台配置选项
├── uninstall.php          # 卸载脚本
├── readme.txt             # WordPress 官方 readme
├── screenshot.png         # 插件截图
├── inc/
│   ├── baidu-submit/      # 百度推送 API
│   ├── awss3/             # 对象存储 API（S3 兼容）
│   ├── cache/             # 缓存模块
│   └── codestar-framework/# CSF 配置框架
└── static/
    └── js/                # 前端脚本
```

---

## 注意事项

- 首次使用前建议**备份网站**，确保错误设置不会导致网站故障
- 如遇插件异常，可开启 WordPress 调试模式获取错误信息
- 静态分离功能需正确配置对象存储参数，Region 请使用英文标识

---

## 更新日志

### 1.2.10
- 修复静态分离配置后无法上传图片/静态文件到对象存储的问题：自定义域名为空时未写入 upload_url_path，导致 WP 仍用本地地址且 key 前缀异常；现改为在保存时若自定义域名为空则用 EndPoint + Bucket 自动构造默认访问地址并写入。
- 修复 key_handler 在 upload_url_path 为空或无效时的 PHP 警告（parse_url 结果非数组时的安全判断）。
- 静态分离仅当 S3 客户端初始化成功（isReady）时再注册上传/删除钩子，避免 Region 异常等导致客户端为 null 时上传报错；S3 Api 增加 isReady() 及 Upload/Delete/hasExist 的空客户端防护。
- 修复上传到对象存储仍失败（无法创建目录/上传文件）：移除 putObject 的 ACL 参数，避免云厂商禁用对象 ACL 导致 403；自定义 EndPoint 时启用 path_style 并统一默认地址为 endpoint/bucket，key_handler 在 path 仅为 bucket 名时不作为 key 前缀；上传前检查本地文件可读并写入 error.log 便于排查。

### 1.2.9
- 新增站外链接优化：支持正常模式 / ?goto=BASE64(url) / ?goto=URL 中转模式，可选新窗口、nofollow、白名单域名，以及可配置自动或手动跳转的中间过渡页面。
- 优化和完善图片本地化功能采用手工本地化模式。

### 1.2.8
- 新增 TinyPNG 图片压缩：在功能优化中接入 TinyPNG API，上传图片自动压缩（每月免费 500 张，可自填 API Key）。
- TinyPNG 压缩逻辑独立为 inc/leseo-tinypng.php，便于后续维护与扩展。

### 1.2.7
- 修复自定义分页符导致出现 /laojiang/2/page/2/ 这类重复分页路径的问题。
- 完善标签 URL 更改功能，支持 /tag/ID/ 形式，避免仅重写规则生效但链接仍为 slug 的情况。
- 修复缓存命名空间、S3 备份路径、禁用复制脚本等多处兼容与细节问题。
- 新增图片上传自动转换 WebP 开关（需服务器 GD 支持 WebP）。
- 新增「手动推送」「百度收录查询」后台页面，支持批量推送和收录查询入口。
- 新增定时批量百度推送、LeCache tmp 目录自动创建等完善项。

### 1.2.6
- 修复静态分离激活后未开启时仍显示红色校验提示的问题（改为仅开启时校验必填项）
- 修复与其它使用 AWS S3 SDK 插件的冲突（优先复用已加载的 SDK）
- 自定义域名支持空值，仅非空时校验 URL 格式
- 新增自定义分页 page 符和 TAG ID URL 功能
- 新增：前台顶部管理菜单、屏蔽 Trackbacks/Pingback、移除 dns-prefetch、移除 Dashicons、移除 RSD 开关

### 1.2.5
- 修复未定义函数 err() 和 show_message() 导致的潜在错误
- 新增 bs_cron_event 回调方法，避免定时任务触发时报错
- 修复百度推送 Meta Box 表单控件无法正确渲染的问题
- 修复 SEO TDK、停用插件、附件类型等多处 Bug
- 修复自定义代码、空值校验、LeCache、百度 API 等多项问题
- 百度推送 API 改为 HTTPS，修复 robots.txt 路径
- 修复 disable-copy.js 兼容性，卸载时恢复静态分离配置

### 1.2.4
- 兼容 WordPress 6.8.1 测试
- 修改文档

### 1.2.3
- 替换 cdn.jsdelivr.net 为 bootcdn 镜像，提高加载速度

### 1.2.2
- 清理框架多余文件

### 1.2.0
- 修复「静态分离」Region 中文字符导致网站崩溃

### 1.1.1
- 修复「静态分离」开启后留空导致插件崩溃

### 1.1.0
- 升级 Codestar Framework 支持 PHP 8+
- 新增静态分离功能，支持主流对象存储

---

## 插件团队和技术支持

[乐在云](https://www.lezaiyun.com/)（老蒋和他的伙伴们），本着资源共享原则，在运营网站过程中用到的或者是有需要用到的主题、插件资源，有选择的免费分享给广大的网友站长，希望能够帮助到你建站过程中提高效率。

感谢团队成员，以及网友提出的优化工具的建议，才有后续产品的不断迭代适合且满足用户需要。不能确保100%的符合兼容网站，我们也仅能做到在工作之余不断的接近和满足你的需要。

| 类目             | 信息                                                         |
| ---------------- | ------------------------------------------------------------ |
| 插件更新地址     | https://www.lezaiyun.com/817.html                            |
| 团队成员         | [老蒋](https://www.laojiang.me/)、老赵、[CNJOEL](https://www.rakvps.com/)、木村 |
| 支持网站         | 乐在云、主机评价网、老蒋玩主机                               |
| 建站资源推荐     | [便宜VPS推荐](https://www.zhujipingjia.com/pianyivps.html)、[美国VPS推荐](https://www.zhujipingjia.com/uscn2gia.html)、[外贸建站主机](https://www.zhujipingjia.com/wordpress-hosting.html)、[SSL证书推荐](https://www.zhujipingjia.com/two-ssls.html)、[WordPress主机推荐](https://www.zhujipingjia.com/wpblog-host.html) |
| 提交WP官网（是） | https://cn.wordpress.org/plugins/leseo/                      |

---

## 致谢

- 部分代码参考自网上教程和热心网友分享
- 部分功能根据站长实际需求开发
- 基于 [Codestar Framework](https://codestarframework.com/) 构建后台界面

---

## 许可证

GPLv2 或更高版本 - [查看完整许可证](http://www.gnu.org/licenses/gpl-2.0.html)

![](wechat.png)
