前言
依然是最近改版需要动到数据库,并且榆桦之前也一直是禁用修订版本的,最近发现不知道什么原因,修订版本又死灰复燃了。
这里说明一下,自动保存,和修订版本是WordPress非常实用的共,在修改文章后,如果出现不满意或其他意外情况之下,为站长们恢复到修改之前版本,提供了可能。
但是,使用 WordPress 的许多小网站或博客都是没有这种必要的,重点是会在数据库产生极多无用的数据,从而使得数据库越来越臃肿。所以各位如果有需要,还请自行酌情考虑是否关闭该功能。
介绍
虽然榆桦偶尔也会遇到需要恢复文章数据的情况,但是榆桦还是选择关闭,下面提供两个有效的方法可以教大家禁用 WordPress 的自动保存、自动草稿、修订版本功能。
方法一:利用 wp-config.php
配置文件启用或禁用 WordPress 功能
WordPress 的强大之处在于其灵活性和可扩展性,这其中包括通过其核心配置文件 wp-config.php
来启用或禁用某些隐藏功能的能力。wp-config.php
文件位于 WordPress 安装的根目录下,是 WordPress 初始化过程中非常重要的一个文件,它包含了数据库连接信息以及一些重要的配置指令。
//禁用自动保存
define('AUTOSAVE_INTERVAL', false);
//设置自动保存间隔/秒
define('AUTOSAVE_INTERVAL', 120);
//禁用文章修订
define('WP_POST_REVISIONS', false);
//设置修订版本最多允许几个
define('WP_POST_REVISIONS', 3);
方法二、当前使用主题 functions.php
文件添加代码
- 禁用 WordPress 自动保存
//禁用自动保存(方法一)
add_action( 'admin_print_scripts', create_function( '$a', "wp_deregister_script('autosave');" ) );
//禁用自动保存(方法二)
add_action('wp_print_scripts', 'fanly_no_autosave');
function fanly_no_autosave() { wp_deregister_script('autosave'); }
- 禁用 WordPress 修订版本
//禁用所有文章类型的修订版本
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’)
更新一个新方法:
// 这是开始定义配置常量的地方,确保这行代码在最前面。
define('WP_POST_REVISIONS', false);
// 然后加载WordPress的设置文件,此行代码必须放在常量之后。
require_once ABSPATH . 'wp-settings.php';
将代码复制到wp-config.php即可,这适合仅禁用修订版本功能,自动保存不会被禁用。这样不怕突然断电之类的了。不过会产生文章ID。
- 此外,禁用之后,数据库依然有数据,需要手动清理,这里以PHPMySql为例:
DELETE FROM wp_posts WHERE post_type = 'revision';
复制代码到数据库SQL中执行。
- 删除文章修订版本后,您可能还需要清理与修订版本相关的元数据。可使用以下命令删除与这些修订版本相关的元数据:
DELETE pm FROM wp_postmeta pm
INNER JOIN wp_posts wp ON wp.ID = pm.post_id
WHERE wp.post_type = 'revision';
同样复制到数据库SQL中执行。
注意:请确保数据库表的前缀(默认是
wp_
)与您的实际表前缀一致。如果您在安装WordPress时使用了不同的前缀,需相应地调整上述SQL命令中的表名。如果不是,需要根据你自己的前缀修改代码。请在操作前备份你的数据库
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长118194359@qq.com!
2. 分享目的仅供学习和交流,下载后请在24小时内删除!
3. 严禁非法商业使用和违反国家法律,后果自负!
4. 本站提供的资源仅包含源码、模板、插件等,不提供技术服务,敬请理解!
5. 如有下载链接失效、无法下载或存在广告,请联系管理员处理!
6. 本站资源售价只是赞助,用于维持日常运营所需费用!
7. 如遇到加密压缩包,请使用WINRAR解压,解压遇到问题请联系管理员!
8. 源码未经详细测试和修改,请使用前自行甄别,无法分辨病毒和误报的部分源码。
9. 源码为可复制产品,不提供退款。
暂无评论内容