博客重新上线了,选择了Wordpress做为博客程序,原来试过typech、wecenter等,都是不错的,但是最终还是选择了Wordpress,毕竟使用的用户多,编辑器这些使用起来也比较方便,更适合做知识累积使用,但还是有一些小地方不符合中国用户的使用习惯,比如说自动保存草稿导致ID杂乱的问题,通过下面的方式修改,可以尽可能的优化wp_posts的资源。

首先修改config.php,在 define(‘WP_DEBUG’, false); 下面加入以下代码。

define('WP_POST_REVISIONS', 0);
define('AUTOSAVE_INTERVAL', 86400);
define('DOING_AUTOSAVE', false);

修改 /wp-admin/includes/post.php 找到:

        $post_id = wp_insert_post(
            array(
                'post_title'  => __( 'Auto Draft' ),
                'post_type'   => $post_type,
                'post_status' => 'auto-draft',
            )
        );
        $post    = get_post( $post_id );

修改成:

        $posts = query_posts(array(
            'post_status' => 'auto-draft',
            'post_type' => $post_type,
            'posts_per_page' => 1
        ));
        if ($posts) {
            $post = get_post($posts[0]->ID);
        } else {
            $post_id = wp_insert_post(array(
                'post_title' => __('Auto Draft') ,
                'post_type' => $post_type,
                'post_status' => 'auto-draft',
            ));
            $post = get_post($post_id);
        }

这样做的方法是允许保存自动草稿,但是如果有自动草稿的话,下次写新文章时,自动加载原来的自动草稿做为新的文章的ID,以最大限度的保证wp_posts数据表的ID连续性。

部分情况下,通过以上修改,还是有可能会出现自动保存和修订版本的情况,可以在额外使用下面的插件,本站通过以上方案解决。