📜  wordpress 删除早于日期“sql”的帖子修订 - SQL (1)

📅  最后修改于: 2023-12-03 14:48:32.457000             🧑  作者: Mango

Wordpress 删除早于日期“SQL”的帖子修订 - SQL

本文将为您介绍如何使用 SQL 命令删除 Wordpress 中早于特定日期的帖子修订(version)。

背景

当您在编辑或更新 Wordpress 帖子时,系统会自动保存您的编辑历史,并生成一个“版本记录”(revision)。这些版本记录占用了您的数据库空间,并在某些情况下增加了数据库备份和恢复的难度。

另外,版本记录的数量可能会影响您的帖子加载速度或占用过多的浏览器缓存,给用户带来不必要的负担。

因此,当您不再需要某些帖子的版本记录时,可以使用 SQL 命令将其删除。

需求

我们需要从 Wordpress 数据表中删除早于特定日期的帖子版本记录。在此例子中,我们将删除早于2020年1月1日的帖子版本记录。

步骤
  1. 打开 PhpMyAdmin 或其他数据库管理工具,并选择您的 Wordpress 数据库。

  2. 执行以下 SQL 命令:

DELETE FROM wp_posts WHERE post_type = 'revision' AND post_modified < '2020-01-01';
  1. 解释:

这条 SQL 命令将从 wp_posts 表中删除所有类型为 revision (版本记录)并且修改日期早于 '2020-01-01' 的帖子。

注意事项
  • 在执行此命令之前,请务必备份您的数据库。删除操作是不可逆的,如果出现错误,将无法恢复数据。

  • 如果您希望保留某些版本记录,可以根据需要修改 SQL 命令。例如,如果只想保留某些帖子的最新 5 个版本记录,可以改为:

DELETE FROM wp_posts WHERE post_type = 'revision' AND post_parent NOT IN (1, 2, 3, 4, 5);

其中,1, 2, 3, 4, 5 代表需要保留版本记录的帖子 ID。

  • 上述 SQL 命令只删除版本记录,而不会删除帖子本身。如果需要删除帖子,请使用 wp_delete_post() 函数。