如何清理WordPress修订版本和自动草稿功能以提高网站速度和数据库空间

WordPress会自动保存文章的修订版本,这是为了方便恢复和编辑。然而,这可能导致数据库中产生大量的冗余数据,增加服务器负担并降低网站的加载速度和查询效率。因此,我们应该养成定期删除WordPress修订版本和自动草稿的习惯,以清理数据库并提高网站性能。

为了提高博客网站的速度和节省数据库空间,禁用修订版本、延长自动保存时间和禁止自动草稿功能是一个不错的建议。下面是三种方法来清理之前自动保存的修订版本和自动草稿功能生成的冗余数据:

PS:建议在操作作之前先做好数据库的备份,以免带来不必要的麻烦,同时使用此功能会影响已经置顶的文章,慎用!

方案一:SQL批量删除

-- 查看自动修订产生的冗余数据
-- 注意,请根据自己的情况,修改表名(主要是表前缀)
SELECT * FROM wp_posts WHERE post_type = 'revision';

数据库中显示内容都是一些冗余的数据,可以直接删除。删除 SQL 命令如下:

-- 删除冗余数据。仅删除 wp_posts 表中的修订版本。
DELETE FROM wp_posts WHERE post_type = 'revision';

-- 删除自动草稿冗余数据。
DELETE FROM wp_posts WHERE post_status = 'auto-draft';
-- 删除修订版本所对应的相关联数据和自动草稿中的冗余数据。a.post_status='auto-draft'对应的是自动草稿数据
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON (a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON (a.ID = c.post_id)
WHERE a.post_status='auto-draft' or a.post_type = 'revision';

PS:wpposts 是 WordPress 的文章数据表,wp 是默认的前缀,如果自定义更改过,请根据实际修改即可

方案二:通过源代码函数删除

将下边的代码添加到到当前主题目录下 functions.php 文件(后台—》主题—》编辑—》选择模板函数),在php结束标记 ?> 前 ,然后刷新一下网页,会删除全部文章修订版本和自动草稿文章。

// 删除修订版本所对应的相关联数据和自动草稿中的冗余数据。post_status='auto-draft'对应的是自动草稿数据
$wpdb->query( "DELETE FROM $wpdb->posts WHERE post_status='auto-draft' or post_type = 'revision'" );

其实,我们只需要定期删除修订版本和自动草稿,没必要将此代码留在主题中,可以在准备清理修订版本时再加到主题中。这是不是一个让你的博客提速的小技巧呢!

方案三:插件方式

可以在后台直接搜索 WP Clean Up 进行安装,或者 下载 WP Clean Up 后,解压并上传到 /wp-content/plugins/ 目录,然后在后台“插件”那里启用。

WP Clean Up 插件是一个 wordpress数据库清理优化插件,启用后“设置”→“WP Clean Up”即进入了操作界面,就可以看到插件的两个主要功能:清理数据和优化数据库。

WP Cleaner 插件的功能很简单,就是为了快速删除自动保存的文章冗余修订版和草稿的,节省空间,提高速度。界面也很简单,直接安装后,不需要设置就可以使用,WP Cleaner插件有保护机制,无论怎么操作都不会影响已发布的文章哦。

- - - - - 本页内容已结束,喜欢请分享 - - - - -

感谢您的来访,获取更多精彩文章请收藏本站。

© 版权声明
THE END
喜欢就支持一下吧
点赞156 分享
评论 抢沙发
头像
你这么聪明,说什么都对!
提交
头像

昵称

夸夸
夸夸
还有吗!没看够!
取消
昵称表情代码图片

    暂无评论内容