关于WP的自动修订、自动保存、自动草稿
自动保存(Auto-Save),跟Word的自动保存功能类似。可以防止断电、浏览器关闭造成的数据未保存。 WP默认每隔60秒自动保存一次,这个功能只会创建一条记录,每隔60秒更新一次,当文章发布后,这条记录的post_status会从draft变成publish,没有一点浪费的地方。
禁用自动保存后的副作用:预览功能不可用,必须保存为草稿才能预览。
文章修订(Post-Revisioning),编辑文章时,如果文章标题、内容或者摘要等字段发生变化,WordPress就会将当前版本保存为一个修订版,类似于我们用的快照功能,方便退回。此功能会进行数据库的读写,一般也很少用到,建议直接关闭即可。
自动草稿(Auto-draft),自动草稿在我们在后台点写文章就会创建,如果我们文章保存或者发布都会进行状态转变,若我们没有做或者直接关闭了浏览器就会形成这么一条草稿。
修订和自动草稿都会占用一个ID,所以,如果像大叔一样URL是ID格式的话,就会产生不连续的状态。
禁用文章修订历史版本
1.打开 wp-config.php 文件
2.在 $table_prefix = ’wp_’; 前面添加下面的两行代码:
define('WP_POST_REVISIONS', false);//禁用历史修订版本
define('WP_POST_REVISIONS', 3); // 如果不禁用自动修订,最多允许保存的版本数,3表示最多保存3个修订版
define('AUTOSAVE_INTERVAL', false);//自动保存时间设置为一天,如果设置为将false改成300则每5分钟保存一次
禁用自动保存功能
1.打开 wp-admin/post.php 文件,搜索 if ( ‘attachment’ !== $post_type ) ,约在163行左右,将以下内容注释或删除
if ( 'attachment' !== $post_type )
wp_enqueue_script('autosave');
2.打开 wp-admin/post-new.php 文件,搜索 wp_enqueue_script( ‘autosave’ ); (70行左右),在代码前面加//将其注释或删除
禁用自动草稿功能
打开 wp-adminincludespost.php 文件,搜索 if ( $create_in_db ) 找到以下代码 600行左右,建议注释掉。
$post_id = wp_insert_post( array( 'post_title' => __( 'Auto Draft' ), 'post_type' => $post_type, 'post_status' => 'auto-draft' ) );
$post = get_post( $post_id );
修改为以下代码
global $current_user,$wpdb;
$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 );
}
注意,以上操作一定要谨慎,最好做好备份,或者采用注释而不是直接删除。
修改自动保存和修订的方法二
/* 移除自动保存和修订版本 */
remove_action('pre_post_update', 'wp_save_post_revision' );
add_action( 'wp_print_scripts', 'disable_autosave' );
function disable_autosave(){
wp_deregister_script('autosave');
}
学习了,谢谢分享!!!!
[…] 参考:https://fx.fklds.com/1052.html […]
不建议修改Wordpress 的系统文件以实现某项功能。
对于日志ID 连续有强迫症的人可以使用,这几个功能还是很重要的,不建议关闭,可以用一些数据库清理软件进行清理。 ✗棒棒的✗
测试下7b2