批量删除网站上不可见的(自定义类型)帖子

时间:2019-11-25 作者:Loyens

我们有一个自定义的帖子类型,数据库中有超过16000篇帖子。每个帖子都有一个自定义元数据“到期日”。

我们希望定期删除具有以下内容的旧帖子:1。有效期大于2年2。在我们的网站上看不到

一些“过期”的帖子仍然显示,我想确保这些帖子不会被删除。

1 个回复
SO网友:mrwpress

我建议您使用MySQL“DELETE”。请参阅本文:

http://www.mysqltutorial.org/mysql-delete-join/

所以,像这样:

DELETE wp_posts, wp_postmeta
FROM wp_posts
INNER JOIN wp_postmeta ON wp_posts.ID = wp_postmeta.post_id
WHERE meta_key = \'expiry date\' AND meta_value <= \'2017-11-27\' AND post_status != \'publish\'

NOTE: \'wp\\\'可能会有所不同,具体取决于wp配置中的表前缀设置。php文件。

这应该去掉posts表中的所有post和meta表中的所有meta记录。它还将删除草稿/修订。

DOUBLE NOTE: -非常重要-除非有数据库备份,否则不要这样做。

相关推荐