取消 WordPress 的文章修订设置,并删除以前的历史修订记录

WordPress 为了保证用户编辑时输入能够及时保存,以防因网络或者手误导致文章数据丢失,设计了定时保存草稿的机制。但当一个站点的文章很多的时候,这些历史数据会占用很多空间,导致数据库文件异常臃肿。很多程序员都不习惯这样的机制,所以本篇文章就来讨论如何将文章修订设置关闭,如果以前产生过历史修订记录,将这些记录删除的方法。

WordPress文章禁用版本修订历史(revision)

在 WordPress 根目录下的 wp-config.php 文件中,添加如下代码即可关闭文章修订功能:

define('WP_POST_REVISIONS', false);//禁用历史修订版本post_revision
PHP

使用插件“WP-Optimize”删除修订版本

WP-Optimize 插件是一款 WordPress 优化插件,即使是初学者也可以放心地使用其提供的修订版删除功能。

启用 WP-Optimize 之后,勾选“删除所有文章修订记录”,点击“Run optimization”,即可删除所有的文章修订版本。

如何快速安全地删除WordPress文章历史版本插图1

从列表中也可以看出,删除文章修订只是 WP-Optimize 插件的其中一个功能,实质上它是一个功能非常强大的 WordPress 瘦身优化插件,还可以优化数据库表、清理自动草稿文章、清理所有回收站文章、删除垃圾评论等功能。

但我们只是很偶尔时才会用到它,因此在不需使用的时候建议将其禁用,每隔一段时间启用一次即可。

WordPress 的自动保存和自动草稿功能

WordPress 也有自动保存和自动草稿功能的。

自动保存(Auto-Save)就是在文章发布之前,系统默认会定时保存编辑的文章内容。默认每 1 分钟一次,很频繁。

自动草稿(Auto-Draft)是在 WordPress3.0 之后新增的功能,自动保存的草稿会被 WordPress 定期清除。

生成的草稿也是在 WordPress 的 wp-posts 表中,草稿会占用 ID,自动清理之后 ID 也随之而出。很奇怪的感觉。

所以如果不需要此项功能的话,也可以将其禁用。

// 不保存任何版本(除了自动保存的版本)
define('WP_POST_REVISIONS', false);
//保存所有修订版本
define('WP_POST_REVISIONS', true);
// 保存 n 个修订版本
define('WP_POST_REVISIONS', n);

//禁用自动保存间隙时间
define(‘AUTOSAVE_INTERVAL’, false);
//自动保存10小时一次
define('AUTOSAVE_INTERVAL', 36000);
//设置自动保存间隔/秒
define(‘AUTOSAVE_INTERVAL’, 120);
PHP

为什么要设置成 10 分钟而不是直接 false?

因为在测试的时候发现直接 false 禁用无效,所以后来索性将自动保存的时间间隔设置成了36000,这样无论编辑多长时间都不会产生 ID 了。

也有插件可以实现禁用自动保存和自动草稿,但一直以来我的建议都是,能使用代码搞定的,尽量不要太多使用插件。像这种需要改动内容不多的,自己修改就可以,更加安全放心。

点赞

发表回复

电子邮件地址不会被公开。必填项已用 * 标注