最近看到有许多朋友提到 「WordPress 文章 ID 不连续」 怎么办?,其实笔者刚刚接触 WordPress 的
时候就发现了这个问题,所以也是一开始就把 WordPress 的自动保存以及文章修订版本功能隐蔽。但是固定连接如果不用 postid 命名的话也许发现不
了,但是大葱一直使用的就是这种固定链接。如果你网速不佳的时候,这会影响到文章的编辑以及发表页面的载入速度;另外每一次自动保存的文章草稿它都会自动
写入我们的数据库,这样的话无形之中也就大大了数据库的储存,冗余数据太多的话也会影响到数据库的工作效率,另外也就是我们之前提到的文章 ID 不连续。
WordPress 仪表盘并没有直接的提供关闭这个功能的选项,那么今天就给大家讲讲如何把这个功能完完全全的隐蔽掉。
方法 1:
WordPress 默认是每 60 秒就会对文章进行自动保存,我个人是觉得太频繁了,那么我们可以打开博客根目录下的 wp-config.php 文
件,搜索 「require_once(ABSPATH . 'wp-settings.php');」 在其前面/上面添加如下代码:
//自动保存 10 小时一次
define('AUTOSAVE_INTERVAL', 36000);
//取消自动修订版
define('WP_POST_REVISIONS',false);
方法 2:
代码来源于国外网站,使用环境:WordPress 3.3.1,原理上 3.0 以上都支持,WP3.0.x 大葱没有进行测试。在我们当前使用主题的 functions.php 文件加入如下代码即可:
/* 取消自动保存和修订版本 */
remove_action('pre_post_update', 'wp_save_post_revision');
add_action('wp_print_scripts', 'disable_autosave');
function disable_autosave() {
wp_deregister_script('autosave');
}
清理数据库中以前的文章历史修订版本
自动保存和修订版本我们都解决了,接下来我们进行删除数据库中的冗余文章和修订版本,数据库操作之前大葱建议大家先进行备份。我们登录
phpmyadmin
中进行数据库管理,SQL 语句命令行中写入以下运行代码执行 (如果更改了数据库表名的前缀,需要将数据表名称中 wp 改成你的前缀):
delete from wp_posts where post_type='revision';