1.轻量级小插件禁用历史版本和自动保存(加在wp-config.php或functions.php中也无妨,但推荐加在一个小插件中):
/* Plugin Name: Disable Revisions and Autosave Plugin URI: Description: Disable the Revisions and Autosave functions. */ define('WP_POST_REVISIONS', false); function disable_autosave() { wp_deregister_script('autosave'); } add_action('wp_print_scripts', 'disable_autosave');2.修改wp-admin\includes\post.php转换为可见自动草稿(或只生成一篇自动草稿):
'post_status' => 'auto-draft'为
'post_status' => 'draft'即转化为可见草稿,这样修改的范围小一点,但每次都得去坛子里看看有没有草稿编辑,嫌麻烦。还有另一种省事的方法(推荐),即获取最早一条自动草稿id作为当前文章id使用。
if ( $ create_in_db ) { global $ current_user;//获取当前用户 $ post = $ wpdb->get_row( "SELECT * FROM $ wpdb->posts WHERE post_status = 'auto-draft' AND post_type = '$ post_type' AND post_author = $ current_user->ID ORDER BY ID ASC LIMIT 1" );//获取最早一条自动草稿 if ( !$ post ) { $ post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $ post_type, 'post_status' => 'auto-draft' ) ); $ post = get_post( $ post_id ); } if ( current_theme_supports( 'post-formats' ) && post_type_supports( $ post->post_type, 'post-formats' ) && get_option( 'default_post_format' ) ) set_post_format( $ post, get_option( 'default_post_format' ) ); } else {3.删除这个计划任务wp-admin/post-new.php
// Schedule auto-draft cleanup //if ( ! wp_next_scheduled( 'wp_scheduled_auto_draft_delete' ) ) // wp_schedule_event( time(), 'daily', 'wp_scheduled_auto_draft_delete' );4.另外,附件、自定义菜单等也占用id哦。鱼和熊掌不能兼得,个人建议不要使用id作为链接元素。
以上代码在WordPress 3.4.2中测试通过,有id洁癖症的试试吧。
备注:转载请注明来自静湖一筑