WordPress 文章禁用自动保存、修订版本

所谓的文章修订版就是当每次修改文章的时候,WordPress 程序都会自动保存一次修改之前的文章版本,专业术语叫做版本控制,这样保证了在误修改的情况下可以还原之前的内容,不可否认这个功能还是非常的人性化的,但是对于像本菜鸡这样的人来说,这个功能似乎也并没有太大的意义,而且使用 WordPress 的许多小网站或博客都是没有这种必要的,重点是会在数据库产生极多无用的数据,从而使得数据库越来越臃肿。

虽然我也曾因为各种突发情况导致数据丢失或者想回退,但是依然选择禁用,因为平时写文章都习惯同记事本直接写,在电脑上,然后边写边保存,而且做到了文章格式的极简化。好了废话就不多说了,下面教大家禁用 WordPress 的自动保存、自动草稿、修订版本功能。

在关闭功能之前先手动清除一下数据库中已经有的文章版本修订记录

DELETE FROM wp_posts WHERE post_type ='revision'

方法一 通过修改 WordPress 配置文件实现功能禁用

不得不说,WordPress 有非常多的隐藏功能都是可以通过 WordPress 安装根目录下的 wp-config.php 这个配置文件来实现功能的启用禁用等。

//禁用自动保存
define('AUTOSAVE_INTERVAL', false);
 
//设置自动保存间隔/秒
define('AUTOSAVE_INTERVAL', 120);
 
//禁用文章修订
define('WP_POST_REVISIONS', false);
 
//设置修订版本最多允许几个
define('WP_POST_REVISIONS', 3);

关于 WP_POST_REVISIONS 这个常量的详细设置为:

  • true(默认)或者 -1:表示保存所有修订版本;
  • false 或者 0:表示不保存任何版本(除了自动保存的版本);
  • 大于 0 的整数 n:表示保存 n 个修订版本(+1 只保存自动保存版本),旧的版本将被删除。

方法二 当前使用主题 functions.php 文件添加代码

1. 禁用 WordPress 自动保存

//禁用自动保存(方法一)
add_action( 'admin_print_scripts', create_function( '$a', "wp_deregister_script('autosave');" ) );
//禁用自动保存(方法二)
add_action('wp_print_scripts', 'fanly_no_autosave');
<strong>function</strong> <strong>fanly_no_autosave</strong>() { wp_deregister_script('autosave'); }

提示,以上是两种禁止 WordPress 自动保存的方法,所以编辑长文章前请注意手动保存,或者使用记事本等软件先编辑好在复制到 WordPress 编辑框中发布,以防在写输入突发情况数据丢失的情况发生。

2. 禁用 WordPress 修订版本

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

常见 WordPress 常见默认有的文章类型有:

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

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

© 版权声明
THE END
喜欢就支持以下吧
点赞0赞赏
分享
评论 抢沙发

请登录后发表评论