禁用WordPress文章修订版本Revisions的两种方法(对新版本WP有效)

所谓的文章修订版就是你每次修改一次文章,它都会自动帮你保存修改之前的文章版本,专业术语叫做版本控制,这样保证了在误修改的情况下可以还原之前的内容,这种功能对我们这种小博客来说并没有太大的意义,而且会在数据库产生很多无用的数据,使你的数据库越来越臃肿。

之前在网上看到了很多都是用下面这样的代码来的,但是经过测试,这段代码在新版本的WP中似乎是无效的。

remove_action('post_update','wp_save_post_revision');

下面两种方法是本人经过亲测,确实有效的方法:

方法一:修改WP安装根目录下的 wp-config.php 文件

前面分享过一篇《[译]通过wp-config来定制你的WordPress》的文章,里面其实就提到了一种禁用修订版本的方法:

// 不保存任何版本(除了自动保存的版本)
define('WP_POST_REVISIONS', false);
 
//保存所有修订版本
define('WP_POST_REVISIONS', true);
 
// 保存 n 个修订版本
define('WP_POST_REVISIONS', 3);

方法二:在主题 functions.php 中添加代码

通过 wp_revisions_to_keep 来实现,它是Wordpress专门提供的一个用来控制修订版本数的。通过把下面的代码添加到当前主题 functions.php 来实现:

禁用所有文章类型的修订版本

add_filter( 'wp_revisions_to_keep', 'specs_wp_revisions_to_keep', 10, 2 );
function specs_wp_revisions_to_keep( $num, $post ) {
    return 0;
}

只禁用某种文章类型的修订版本

add_filter( 'wp_revisions_to_keep', 'specs_wp_revisions_to_keep', 10, 2 );
function specs_wp_revisions_to_keep( $num, $post ) {
    if ( 'post_type' == $post->post_type ) { //引号中post_type改为你想禁用修订版本的文章类型
        return 0;
    }
    return $num;
}

下面是Wordpress中几种类型

  • Post (Post Type: ‘post’)

  • Page (Post Type: ‘page’)

  • Attachment (Post Type: ‘attachment’)

  • Revision (Post Type: ‘revision’)

  • Navigation menu (Post Type: ‘nav_menu_item’)

 

附带一个禁用自动保存功能的方法(也是添加到 functions.php 中)

add_action('wp_print_scripts','disable_autosave');
function disable_autosave(){  
    wp_deregister_script('autosave'); 
}


转载于:https://my.oschina.net/9iphp/blog/378348

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值