大家好,对感兴趣的小伙伴,下面一起跟随三零脚本的小编来看看的例子吧。
只要把下面的代码复制到主题目录下的 function.php 中,再刷新下文章,就会自动删除全部文章修订版本和自动草稿文章。
// 删除修订版本所对应的相关联数据和自动草稿中的冗余数据。post_status='auto-draft'对应的是自动草稿数据
$wpdb->query( "DELETE FROM $wpdb->posts WHERE post_status='auto-draft' or post_type = 'revision'" );
这段代码不推荐长期放在function.php中,定期清理的时候,放入即可。
对数据库进行删除操作前,请一定记得先备份数据库!!!
1、我们可以通过执行下面这段语句,就可以快速找出所有文章历史修订版本和草稿:
SELECT * FROM wp_posts WHERE post_type = 'revision' or post_status = 'auto-draft';
2、首先执行下面这段语句命令,可以删除掉所有历史文章修订版本:
DELETE FROM wp_posts WHERE post_type = 'revision';
3、下面这段是删除所有自动草稿:
DELETE FROM wp_posts WHERE post_status = 'auto-draft';
4、但是在这些历史文章版本和草稿中,通常还有很多相关联的数据,这个一般存在post_postmeta中,我们也可以一并删除,执行下面这段sql命令即可:
/* 下面这一段可以同时完成上面两段的工作 */
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';