php - 删除最近 X 天内在 WordPress 中发布的所有帖子

标签 php mysql wordpress cron

我想知道你们中是否有人已经在 PHP 或 mysql 中实现了这样一个通过 cronjob 运行的脚本。

我想用一个简单的命令删除最近几天内发布的所有帖子。 我想知道是否

DELETE FROM wp_posts WHERE post_date < DATE_SUB(NOW(), INTERVAL 30 DAY);

要去那里工作。你有什么建议?

最佳答案

你的一行 MySQL 是不够的。要完全删除帖子,您还需要删除以下内容:

  • 来自 wp_postmeta 表的相关帖子元数据
  • 来自 wp_comments 表的评论
  • wp_commentmeta 表中这些评论的元数据

在提供实际解决方案方面,以下插件可以满足您的需求:

此外,如果您只是想保持数据库整洁,您可以将这行代码添加到您的 wp-config.php 文件 define( 'WP_POST_REVISIONS', 8 ); 这会阻止 WordPress 在数据库中创建无限数量的后期修订。不是您所说的问题,但很方便。

关于php - 删除最近 X 天内在 WordPress 中发布的所有帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34123894/

相关文章:

MySQL 程序开发而不是发送大查询

mysql - 如何订购查询以搜索 where value = or is LIKE

html - 如何设置图片后面的文字滚动

php - 如何在 Magento Go 中查找和编辑 PHTML 文件?

php - CakePHP 2.0 基本身份验证始终提供 302 重定向而不是 401 未授权

php - 尽管密码正确,password_verify 密码始终无效

php - 如何使用 Visual Studio 进行 WordPress 开发?

PHP 拒绝在框架网格中显示 mysql 数据

php - 当条目具有\n 时修复 LOAD DATA INFILE

php - Wordpress PageNavi 插件不适用于 category.php