wordpress 删除文章默认为软删除,post_status 变为 trash;永久删除后记录彻底消失,phpmyadmin 无法恢复,只能依赖备份或 binlog。
phpmyadmin 里怎么定位被删的 wordpress 文章
wordpress 删除文章默认是软删除,wp_posts 表里对应记录的 post_status 会变成 trash,不是真删。但如果你点了“永久删除”,或者清空了回收站,那行就真的从表里消失了——这时候只能靠备份或 binlog 恢复,phpmyadmin 本身不存历史快照。
所以第一步先确认:是不是真没了?
- 进 phpMyAdmin → 选你的 WordPress 数据库 → 打开
wp_posts表 - 点“搜索”标签页,在
post_status字段填trash,查有没有残留记录 - 如果还能搜到,说明只是进了回收站,改回
publish就行(见下一条) - 如果搜不到,且你没手动备份过
.sql文件,那 phpMyAdmin 无法凭空恢复——它不是版本控制系统
把 trash 状态的文章手动改回 publish
这是最常见也最安全的“恢复”操作,本质是更新一行记录的状态字段,不需要导入导出。
在 wp_posts 表里找到目标文章(可通过 post_title 或 post_date 辅助筛选),点击“编辑”,把 post_status 从 trash 改成 publish,保存即可。
- 注意检查
post_type必须是post(不是revision或nav_menu_item) - 如果文章有自定义字段(
wp_postmeta),一般不用动,WordPress 会自动关联 - 改完刷新前台,可能要清空对象缓存(如 Redis、OPcache)或插件缓存(比如 WP Super Cache)才立刻显示
用 SQL 语句批量恢复多个 trash 文章
手动点太慢?用 SQL 更直接,也方便加条件筛选。但务必先备份整个 wp_posts 表(导出为 .sql 文件),否则手抖写错 WHERE 条件会全表变 publish。
中文敏感词/违禁词检测与内容合规性检查工具。支持对小红书(Xiaohongshu)、Douyin(抖音)、WeChat(微信)、Weibo(微博)、Bilibili(哔哩哔哩)、Zhihu(知乎)、Taobao(淘宝)、JD.com(京东)等主流平台的禁用词、限用词及高风险词进行文本扫描与合规性分析。
在 phpMyAdmin 的“SQL”标签页粘贴执行:
UPDATE wp_posts SET post_status = 'publish' WHERE post_status = 'trash' AND post_type = 'post';
- 别漏掉
AND post_type = 'post',否则页面(page)、草稿(draft)甚至附件(attachment)也可能被误改 - 想只恢复某几天删的?加时间条件:
AND post_date >= '2024-05-01' AND post_date - 执行前先用
SELECT * FROM wp_posts WHERE post_status = 'trash' AND post_type = 'post' LIMIT 10;预览,确认数据无误再 UPDATE
为什么导出的 SQL 文件恢复不了“永久删除”的文章
因为 phpMyAdmin 导出的 .sql 文件,只是数据库某一时刻的快照。如果你导出的是删除操作之后的备份,那里面本来就没有那篇文章。
- 真正能回退“永久删除”的,只有三种可能:服务器开启了 MySQL binlog(需管理员权限 +
mysqlbinlog工具解析)、你本地保留了删除前的完整 SQL 备份、或托管商提供了数据库时间点恢复(如 AWS RDS、SiteGround 的“回滚到某小时”) - 插件如 UpdraftPlus、All-in-One WP Migration 的备份,也只管它自己备份那一刻的数据,不是实时日志
- 下次删之前,养成习惯:在 phpMyAdmin 里先导出
wp_posts表(结构+数据),哪怕只花 20 秒
恢复这事,靠的是备份策略,不是 phpMyAdmin 的某个按钮。删完才发现没备份,基本就停在这儿了。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










