清除WordPress日志的修订版
WordPress 2.6之后加入了日志修订记录功能(Post Revision),每次更新一个已有的日志后,在该日志编辑界面中的“日志修订版本”里就会出现一条日志修订记录(这让我想到了Subversion,(*^_^*)),相应地,在WordPress DB的wp_posts表中就会新增一条和原来post_title相同但post_status为inherit的记录,本来这个修订记录功能的意义在于:用来恢复以前版本的日志。但记录每次更新的内容,有时感觉太浪费DB的存储了,再加上还有Post Autosave功能,导致一大坨同名但版本不同的日志在DB中保存。网上找到了几种办法删除这种修订状态的日志。
修改WordPress代码,关闭修订功能
可以通过修改WordPress的代码,来关闭它的修订记录功能,参考:关闭WordPress修订功能,清除“Revision”的方法。摘录如下:
编辑wp-config.php文件(博客根目录),在下面代码:
define('ABSPATH', dirname(__FILE__).'/');
之前添加以下代码:
define('WP_POST_REVISIONS',false);
上述代码是屏蔽掉“Revision”,有几个参数可选,根据实际需要修改(蓝色部分):
- true(默认)或者-1:保存所有修订版本
- false或者0:不保存任何版本(除了自动保存的版本)
- 大于0的整数n:保存n个修订版本(+1只保存自动保存版本),旧的版本将被删除。
具体说明请查看官方的说明文档:Revision Management
使用WP Cleaner插件
作者:JiangMiao
下载:WP Cleaner 1.0.2
安装启动WP Cleaner后,在WordPress后台管理的“设置”中可以找到WP Cleaner功能,目前可以清除draft和inherit状态的日志。
这个插件是针对所有的日志来扫描的,即一次就要删除所有日志的修订版本,要想针对特定的日志进行修订版清除还不行。这样的话,当你真的想保留某些日志的修订版而清除其它日志的修订版时就不好解决了。不明白,WordPress既然加入了这个修订记录功能,就应该将修订记录的管理功能也集成到标准的后台管理程序中,难道我没找到?
使用Delete-Revision Manager插件
作者:gohsy
下载:Delete-Revision Manager
我自己还没试过这个插件。