WordPress如何解决文章ID不连续的问题,文章ID不连续题是一个很正常的现象,没啥毛病,不是你的博客出了问题,而是WordPress系统默认的,不用在意忽略它。但是对于有着轻微强迫症,追求完美的朋友来说,这的确很让人讨厌。
在WordPress后台并没有直接的提供关闭这个功能的选项,那么该如何解决文章ID不连续的问题呢?今天就给大家讲讲如何把这个功能完完全全的隐蔽掉。
找到当前主题目录,在主题目录下到文件functions.php,将下述代码添加到文件里面。
//WordPress解决文章ID不连续的问题
function keep_id_continuous(){
global $wpdb;
$lastID = $wpdb->get_var("SELECT ID FROM $wpdb->posts WHERE post_status = 'publish' OR post_status = 'draft' OR post_status = 'private' OR ( post_status = 'inherit' AND post_type = 'attachment' ) ORDER BY ID DESC LIMIT 1");
$wpdb->query("DELETE FROM $wpdb->posts WHERE ( post_status = 'auto-draft' OR ( post_status = 'inherit' AND post_type = 'revision' ) ) AND ID > $lastID");
$lastID++;
$wpdb->query("ALTER TABLE $wpdb->posts AUTO_INCREMENT = $lastID");
}
add_filter( 'load-post-new.php', 'keep_id_continuous' );
add_filter( 'load-media-new.php', 'keep_id_continuous' );
add_filter( 'load-nav-menus.php', 'keep_id_continuous' );
//禁用自动保存,所以编辑长文章前请注意手动保存。
add_action( 'admin_print_scripts', create_function( '$a', "wp_deregister_script('autosave');" ) );
//禁用修订版本
remove_action( 'pre_post_update' , 'wp_save_post_revision' );