WordPress拥有自动保存文章的功能,防止突然掉线或主机故障等丢失文章,默认情况下是 30 秒保存一次,保留最后的 5 个文章版本。

如果你想修改这些默认设置,可以在WordPress根目录下的 wp-config.php 添加:

//一分钟保存一次
define('AUTOSAVE_INTERVAL', 60);

//保存 10 个修订版本
define('WP_POST_REVISIONS', 10);

//一个修订版本都不保存(即 禁用自动保存功能)
define('WP_POST_REVISIONS', false);

 

 

WordPress的版本修订历史(revision)、自动保存(autosave)和自动草稿(auto-draft)功能会非常讨厌的增加文章ID的数字,会造成连续的两篇文章,ID数值可能会相差很多,让我们这些希望文章ID连续的人感到非常不舒服。本文将介绍在WordPress3.5下如何禁止版本修订历史、自动保存和自动草稿的问题。

禁止版本修订历史(revision)和自动保存(autosave)

版本修订历史(revision)是在文章发布后,每次更新时向数据库添加一条版本修订历史记录。这种方式和wiki很像。然而,由于个人博客很少需要保留版本记录,这个功能显得有些鸡肋。不知为何WordPress不给这样的功能开一个设置选项,可以让用户选择是否开启。

自动保存(autosave)虽然应该存在,但WordPress的处理方式实在有些奇怪,自动保存居然也要占用文章ID,并且默认60s保存一次,这样会造成一篇文章写下来可能会消耗几十个ID,并且在数据库中存入了大量的无用信息。

找到wp-includes/defaut-contants.php文件,修改如下代码:

禁用版本修订历史和自动保存(方法1)

PHP

// 修改前

if ( !defined( 'AUTOSAVE_INTERVAL' ) )

define( 'AUTOSAVE_INTERVAL', 60 );

if ( !defined('WP_POST_REVISIONS') )

define('WP_POST_REVISIONS', true );

// 修改后

if ( !defined( 'AUTOSAVE_INTERVAL' ) )

define( 'AUTOSAVE_INTERVAL', false );

if ( !defined('WP_POST_REVISIONS') )

define('WP_POST_REVISIONS', false );

其中autosave的60为自动保存时间间隔,单位为s,可以修改为更大的数值或修改为false禁用。

 

除了上述的这些可能造成文章ID不连续的功能外,WordPress还会在上传新的文件、添加导航菜单、添加页面等情况下占用ID,造成文章ID不连续。这种占用没有太好的方法进行解决。

总之,WordPress的结构设计造成了大家极其反感的文章ID不连续问题,WordPress却完全没有修改这种不合理设计的打算。

目前并没有特别好用的插件 部分网友说 使用“ Super Switch ” 插件禁止修订版本和自动保存 经过博主亲测并无此插件

 

博主亲测下面的方法立马见效

文章编辑页甚至没有保存草稿的按钮

当前使用主题文件夹下的 functions.php文件php结束标记 ?> 前加上如下代码

//禁用文章自动保存(唯一方法)
add_action('wp_print_scripts','fanly_no_autosave');
function fanly_no_autosave(){
    wp_deregister_script('autosave');
}
//禁用文章修订版本
add_filter( 'wp_revisions_to_keep', 'fanly_wp_revisions_to_keep', 10, 2 );
function fanly_wp_revisions_to_keep( $num, $post ) { return 0;}

另外你如果有自己定义的文章类型,可以使用下面这段代码来禁止特定文章类型的修订版本。

复制//只禁用某种文章类型的修订版本
add_filter( 'wp_revisions_to_keep', 'fanly_wp_revisions_to_keep', 10, 2 );
function fanly_wp_revisions_to_keep( $num, $post ) {
    if ( 'post_type' == $post->post_type ) { //post_type为你要禁止修订版本的文章类型
        return 0;
    }
    return $num;
}

下面是Wordpress中几种类型:

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

温馨提示PS:不少WordPress用户会使用在wp-config.php添加相关代码来禁用自动保存和修订版本,但就个人的使用情况来看效果并不理想,具体原因尚不明确。

也有另外的代码

//禁用文章自动保存(方法一)
add_action( 'admin_print_scripts', create_function( '$a', "wp_deregister_script('autosave');" ) );
博主测试后 wp显示网站遇到致命错误
不知是主题问题还是代码哪里错误
所以上面哪个有效的代码博主标注  (唯一方法)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。