今天写好文章保存的时候发现文章的ID是46,再看一下其他文章的链接,id全部是不连续的,但是我博客明明只有4篇文章的,这是啥情况?
去网上查了一下发现wordpress文章ID不连续的原因是wp自动保存的草稿造成的,如下图:
既然知道是自动保存功能导致的,我们就可以针对这个功能提供解决方法:
解决办法一:
既然文章ID不连续的原因是自动保存的草稿造成的,那么,如果我们将草稿的自动保存时间修改到很长或者禁用这个功能,那么,ID不连续的问题不就解决了吗?
具体操作方案:
根目录下找到wp-config.php文件,打开文件,全文搜索“require_once(ABSPATH . ‘wp-settings.php’);”,在结果处,增加以下代码,保存即可。
具体代码:
[php]
//自动保存2小时一次
define(‘AUTOSAVE_INTERVAL’, 36000);
//取消自动修订版
define(‘WP_POST_REVISIONS’,false);
[/php]
缺点:自动保存有时能帮我们防断电,误操作等情况的发生,这样屏蔽掉自动保存的功能后,遇到特殊情况,就郁闷了。
解决方法二:
这种办法是将以往存在的自动保存的草稿版本、自动修订版本进行删除,来达到ID连续的目的。
具体操作方案:
进入当前主题文件夹,修改functions.php文件,在文件中添加以下代码:
[php]
具体代码:
/* 将自动保存和修订版本进行取消 */
remove_action(‘pre_post_update’, ‘wp_save_post_revision’ );
add_action( ‘wp_print_scripts’, ‘disable_autosave’ );
function disable_autosave() {
wp_deregister_script(‘autosave’);
}
[/php]
在取消自动保存之后,登入主机数据库,在SQL语句命令行中加入下面的运行代码进行执行:
delete from wp_posts where post_type=’revision’;
由此,即删除了数据库中 ,以往存在的草稿文章及各个修订版本。
注意:
自动保存功能还是比较好用的,要不要删除,大家可以根据需要选择。
如果你需要将之前已经不连续的文章id进行重排,请参考此贴:http://www.wangchengjing.com/371.html