WordPress禁用修订版本、自动保存、自动草稿

2019年12月9日11:50:18 发表评论 61 views

WordPress的版本修订历史(revision)、自动保存(autosave)和自动草稿(auto-draft)功能会增加文章ID的数字,会造成连续的两篇文章,ID数值可能会相差很多,让文章ID不能连续。

WordPress禁用修订版本、自动保存、自动草稿

如何禁用WordPress历史版本修订、自动保存,自动草稿功能呢?下面的方法需要修改源文件,所以在打开每一个文件之前,记得一定要先做好备份!

禁用WordPress文章修订历史版本

方法一:修改 wp-config.php 文件实现禁用

打开 wp-config.php 文件,在 $table_prefix = \'wp_\'; 前面添加下面的两行代码:

  1. //禁用文章修订
  2. define('WP_POST_REVISIONS', false);
  3. //设置修订版本最多允许几个
  4. define('WP_POST_REVISIONS', 3);

如下:

WordPress禁用修订版本、自动保存、自动草稿

 

方法二:主题 functions.php 文件添加代码

  1. //禁用所有文章类型的修订版本
  2. add_filter( 'wp_revisions_to_keep', 'fanly_wp_revisions_to_keep', 10, 2 );
  3. function fanly_wp_revisions_to_keep( $num$post ) { return 0;}
  4. //禁用某种文章类型的修订版本
  5. add_filter( 'wp_revisions_to_keep', 'fanly_wp_revisions_to_keep', 10, 2 );
  6. function fanly_wp_revisions_to_keep( $num$post ) {
  7.     if ( 'post_type' == $post->post_type ) { //引号中 post_type 改为你想禁用修订版本的文章类型
  8.         return 0;
  9.     }
  10.     return $num;
  11. }

常见 WordPress 文章类型有:

  • 文章(Post Type: ‘post’)
  • 页面(Post Type: ‘page’)
  • 附件媒体(Post Type: ‘attachment’)
  • 修订版本(Post Type: ‘revision’)
  • 导航菜单(Post Type: ‘nav_menu_item’)

如果网站使用了自定义文章类型,那么就是自定义的名称了。

 

禁用WordPress自动保存

方法一:修改 wp-config.php 文件实现禁用

打开 wp-config.php 文件,在 $table_prefix = \'wp_\'; 前面添加下面的两行代码:

  1. //禁用自动保存
  2. define('AUTOSAVE_INTERVAL', false);
  3. //设置自动保存间隔/秒
  4. define('AUTOSAVE_INTERVAL', 120);

 

方法二:注释自动保存代码

1、打开 wp-admin/post.php 文件,搜索 if ( \'attachment\' !== $post_type ) ,找到以下代码 150-151行。

  1. if ( \'attachment\' !== $post_type )
  2. wp_enqueue_script(\'autosave\');

将这两行用注释符号//注释即可!如下:

WordPress禁用修订版本、自动保存、自动草稿

2、打开 wp-admin/post-new.php 文件,搜索 wp_enqueue_script( \'autosave\' ); (69行),在代码前面加//将其注释或删除,如下:

WordPress禁用修订版本、自动保存、自动草稿

 

方法三:主题 functions.php 文件添加代码

  1. //禁用自动保存(方法一)
  2. add_action( 'admin_print_scripts', create_function( '$a', "wp_deregister_script('autosave');" ) );
  3. //禁用自动保存(方法二)
  4. add_action('wp_print_scripts', 'fanly_no_autosave');
  5. function fanly_no_autosave() { wp_deregister_script('autosave'); }

 

禁用WordPress自动草稿

打开 wp-adminincludespost.php 文件,搜索 if ( $create_in_db ) { 找到以下代码 597行

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

修改为:

  1. global $current_user,$wpdb;
  2. $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" );
  3. if (!($post) ) {
  4.     $post_id = wp_insert_post( array( \'post_title\' => __( \'Auto Draft\' ), \'post_type\' => $post_type, \'post_status\' => \'auto-draft\' ) );
  5.     $post = get_post( $post_id );
  6. }

如下:

WordPress禁用修订版本、自动保存、自动草稿

 

除以上动手修改代码外,还有一款国人开发的比较老的插件WP Cleaner也可以实现。删除无用的修订版、自动草稿及自动保存的文章,减小空间,提高性能。WP Cleaner基本使用一次就足够了。

以上就是WordPress禁用文章修订、自动保存、自动草稿的方法,希望对大家有所帮助。

©里维斯社,本站推荐使用的主机:阿里云腾讯云;本站推荐使用的WP主题:WordPress主题

晨会游戏

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: