去除WordPress 3.0的auto-draft

Deloz,2010年07月26日21时30分05秒,WordPress,评论(7),阅读(248),Via 本站原创

上次把WordPress升级到3.0之后,发现辛苦才弄好的不连续ID现在不连续了,经过多次测试才发现3.0添加多了一个auto-draft(自动草稿)功能...相当烦人

What the hell is Auto Draft?

点"日志-->添加" ,不写任何内容,WordPress就自动在数据库加入一个空白的数据,post_status为auto-draft,post_date_gmt为0000-00-00 00:00:00.

去除WordPress 3.0的auto-draft

调用最多评论的文章时,也会显示"自动草稿"这个空白文章....

去除WordPress 3.0的auto-draft

虽然7天后WordPress会自动把auto-drafts类型的删除,但ID已经不是连续了..

选择WP,选择折腾...原本想降级到2.92,后来慢慢忘了,,早就想删除这功能了,今天心情好,认真多次搜索测试修改,终于给我杀掉啦.

方法如下:

根据WordPress 3.0去掉历史版本记录,找到wp-admin/includes/post.php里边的get_default_post_to_edit这个函数,

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

把这一句修改成如下:

$post_auto_draft = $wpdb->get_row( "SELECT * FROM $wpdb->posts WHERE post_type = '$post_type' AND post_status = 'auto-draft' LIMIT 1" );
if ( $post_auto_draft ) {
$post = $post_auto_draft;
} else {
$post = get_post( wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) ) );
}

如下图所示:

去除WordPress 3.0的auto-draft

意思就是: 如果有自动保存的auto-draft就使用以前的auto-draft的ID来写文章,如果没有就插入一条auto-draft, 最后,数据库中总有一条auto-draft... 虽然数据库会多一条数据,但ID还是可以保持连续.

欢迎大家使用这个方法 :mrgreen:

相关文章

  • 暂无相关日志
标签:

转载原创文章请注明,转载自: Deloz.Net [Deloz.Net]
本文地址:http://deloz.net/1000000503.html

7条评论 发表评论

  1. 1楼zhengsky 评论于2010年7月27日01时15分52秒 回复   

    不是从XX版本开始就取消自动保存提示了么?(直到现在,我还是感觉自己思路紊乱头脑不清。。。哎。。。

    • 2楼Deloz 评论于2010年7月28日23时13分14秒 回复   

      一直要手动取消的 :cry:

  2. 3楼LaoShang 评论于2010年7月31日11时25分34秒 回复   

    强迫症 哦,post id不连续就不连续,也不影响啥

    • 5楼Deloz 评论于2010年8月7日09时24分27秒 回复   

      是有点强迫了. :razz:

  3. 4楼企业网站建设 评论于2010年8月5日13时07分33秒 回复   

    博客搞得不错,欢迎也到我那看看,提提建议。

  4. 6楼Mr.差不多 评论于2010年8月16日16时46分44秒 回复   

    这个功能真的是太让人心烦了! :idea:

    一没那技术,二怕升级太快了,还要手动修改,索性就用插件了! :mrgreen:

    • 7楼Deloz 评论于2010年8月17日10时05分03秒 回复   

      3.0.1这个方法又失效了. ..

评论一下


(支持Ctrl + Enter)