一些读者经常问我们,WordPress 的垃圾箱应该多久清空一次。
默认情况下,WordPress 会在 30 天后自动删除垃圾箱中的所有内容。不过,有些用户可能希望更频繁或更少地清空垃圾箱,或者手动清空。
我们研究了不同的选项,发现可以通过使用插件来限制垃圾箱被自动删除,或者添加代码片段来阻止 WordPress 自动删除垃圾箱中的内容。
在本文中,我们将教您如何限制或禁用 WordPress 自动清空垃圾箱。

WordPress 中的垃圾箱是什么?
WordPress 早在 2.9 版本就加入了垃圾箱功能。它的工作原理就像电脑上的回收站或垃圾箱。
换句话说,您删除的文章不会立即被永久删除,而是先被放入垃圾箱,以便在一段时间内可以恢复。任何人都可能不小心删除一篇文章。这就是为什么 WordPress 让恢复已删除的文章和页面变得非常容易。
您可以在 WordPress 后台的【文章】→【所有文章】中查看,然后点击“垃圾箱”选项。
您的 WordPress 网站会在 30 天后自动删除垃圾箱中的所有内容,以防止堆积。
如果您不希望 WordPress 自动删除垃圾箱中的内容,或者希望它更频繁或更少地清空,该怎么办?
下面我们来看看如何让垃圾箱按您期望的频率自动清空。我们将介绍三种方法。第一种方法最适用于大多数用户。您可以使用下面的链接跳转到您喜欢的方法:
- 方法 1:使用插件更改 WordPress 清空垃圾箱的时间
- 方法 2:使用代码更改 WordPress 清空垃圾箱的时间
- 方法 3:阻止 WordPress 自动清空垃圾箱
视频教程
订阅猫哥的 YouTube 频道观看更多 WordPress 视频教程。
如果您更喜欢文字说明,请继续阅读。
方法 1:使用插件更改 WordPress 清空垃圾箱的时间
首先,您需要安装并激活 Change Empty Trash Time 插件。更多详情,请参阅我们的 WordPress 插件安装指南。
注意: Change Empty Trash Time 插件的仓库页面显示它尚未与当前版本的 WordPress 进行测试。猫哥已经测试过,确认它仍然可用,但无法保证不会在您的网站上出现问题。更多详情,请参阅猫哥的 是否应该使用过时的 WordPress 插件 指南。
激活后,请访问后台的【设置】→【常规】页面。
滚动到页面底部,您会看到一个新增的“清空垃圾箱的天数”设置项。
只需输入一个数字,表示 WordPress 需要多少天来清空垃圾箱。例如,输入 1 表示每天清空,7 表示每周清空,30 表示每月清空。
如果您输入 0,那么删除的文章和页面将直接被永久删除,而不会进入垃圾箱。
注意: 将时间设置为 0 要非常小心,因为永久删除的文章和页面很难恢复。请确保您使用了备份插件,以防万一。
别忘了点击“保存更改”按钮来存储您的设置。
方法 2:使用代码更改 WordPress 清空垃圾箱的时间
您也可以使用代码片段来配置垃圾箱清空的频率。此方法不适合初学者,如果您不熟悉代码,请使用方法 1。
这种方法需要编辑您的 wp-config.php 文件。
如果您之前没有编辑过 wp-config.php 文件,请查看猫哥的 WordPress 中编辑 wp-config.php 文件指南。
您只需将以下代码添加到 wp-config.php 文件中:
define('EMPTY_TRASH_DAYS', 1 ); // 整数表示天数
请将其粘贴到文件末尾,紧挨着“That’s all, stop editing! Happy blogging.”这一行之前。

如果您保持此代码片段不变,那么垃圾箱将每天清空。您可以将数字 1 改为其他数字,垃圾箱将在该天数后清空。
如果您根本不想使用垃圾箱功能,请将数字设置为 0。这样,删除的文章和页面将直接被永久删除,而不会进入垃圾箱。
请确保先设置好备份插件,以防需要恢复意外删除的页面。
完成修改后,别忘了保存 wp-config.php 文件。
方法 3:阻止 WordPress 自动清空垃圾箱
您是否希望阻止 WordPress 自动删除垃圾箱中的内容?
很多教程会告诉您向主题的 functions.php 文件添加代码片段。
但我们通常不推荐直接编辑主题文件,因为稍有不慎就可能导致网站崩溃。更好的方法是使用 WPCode 插件。
首先,您需要安装并激活免费的 WPCode 插件。更多详情,请参阅猫哥的 WordPress 插件安装指南。
激活后,请前往 WordPress 后台的【代码片段】→【+ 添加片段】,然后选择“添加自定义代码(新片段)”选项。

接下来,为您的代码片段输入一个标题。
然后,复制以下代码并粘贴到“代码预览”框中:
function wpb_remove_schedule_delete() {
remove_action( 'wp_scheduled_delete', 'wp_scheduled_delete' );
}
add_action( 'init', 'wpb_remove_schedule_delete' );
这段代码的作用是移除当垃圾箱中的项目到期时自动删除它们的动作。
别忘了点击“代码类型”下拉菜单,选择“PHP 片段”选项。
之后,您可以向下滚动到“插入”部分,查看更多选项,例如如何以及在哪里插入代码。
我们建议使用默认选项。插件会自动插入代码并在您的网站各处运行。

然后,您可以点击开关将代码片段设置为“启用”。
完成之后,只需点击顶部的“保存片段”按钮即可。

现在,当您将项目放入垃圾箱后,它将一直保留在那里,直到您查看已删除的文件。
此时,您可以手动点击“清空垃圾箱”按钮来删除任何文章。

我们希望这篇教程能帮助您学会如何限制或禁用 WordPress 自动清空垃圾箱。您可能还想了解如何 自动清空 WordPress 垃圾箱,或者查看猫哥精选的 最佳 WordPress 插件 来发展您的网站。
如果您喜欢这篇文章,请订阅猫哥的 YouTube 频道 观看 WordPress 视频教程。您也可以在 Twitter 和 Facebook 上找到我们。
