wordpress 主题sql 删除草稿(wordpress删除标题)

在WordPress的使用过程中,我们经常会遇到草稿的问题。草稿不仅会占用数据库空间,还会影响网站的性能。今天,我就来和大家分享一下如何通过SQL语句来删除WordPress主题中的草稿。

草稿问题分析

我们来分析一下草稿问题产生的原因。WordPress在编辑文章或页面时,会自动保存草稿。当我们在编辑过程中突然断电、网络中断或浏览器崩溃时,草稿就会保存下来。有时候我们可能不小心点击了“保存草稿”按钮,也会产生草稿。

这些草稿虽然不会影响网站的前台显示,但它们会占用数据库空间,导致数据库越来越大,从而影响网站的性能。因此,定期清理草稿是非常重要的。

删除草稿的方法

下面,我将介绍两种删除WordPress主题中草稿的方法:通过WordPress后台和通过SQL语句。

方法一:通过WordPress后台

1. 登录WordPress后台。

2. 点击“文章”菜单,选择“所有文章”。

3. 在搜索框中输入“草稿”,然后点击“搜索”按钮。

4. 在搜索结果中,你可以看到所有草稿。点击“批量操作”下拉菜单,选择“删除”。

5. 点击“应用”按钮,确认删除。

这种方法简单易行,但只能删除当前登录用户下的草稿。如果你需要删除所有用户的草稿,就需要使用SQL语句。

方法二:通过SQL语句

1. 登录MySQL数据库。

2. 执行以下SQL语句:

“`sql

DELETE FROM wp_posts WHERE post_type = ‘post’ AND post_status = ‘draft’;

“`

这条SQL语句的作用是删除所有类型为“post”且状态为“草稿”的文章。

3. 执行以下SQL语句:

“`sql

DELETE FROM wp_posts WHERE post_type = ‘page’ AND post_status = ‘draft’;

“`

这条SQL语句的作用是删除所有类型为“page”且状态为“草稿”的页面。

4. 执行以下SQL语句:

“`sql

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘post’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿文章相关的元数据。

5. 执行以下SQL语句:

“`sql

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘page’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿页面相关的元数据。

6. 执行以下SQL语句:

“`sql

DELETE FROM wp_comments WHERE comment_post_ID IN (SELECT ID FROM wp_posts WHERE post_type = ‘post’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿文章相关的评论。

7. 执行以下SQL语句:

“`sql

DELETE FROM wp_comments WHERE comment_post_ID IN (SELECT ID FROM wp_posts WHERE post_type = ‘page’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿页面相关的评论。

8. 执行以下SQL语句:

“`sql

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘post’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿文章相关的标签关系。

9. 执行以下SQL语句:

“`sql

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘page’ AND post_status = ‘draft’);

“`

这条SQL语句的作用是删除所有与草稿页面相关的标签关系。

10. 执行以下SQL语句:

“`sql

DELETE FROM wp_term_taxonomy WHERE term_id IN (SELECT term_id FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘post’ AND post_status = ‘draft’));

“`

这条SQL语句的作用是删除所有与草稿文章相关的标签分类。

11. 执行以下SQL语句:

“`sql

DELETE FROM wp_term_taxonomy WHERE term_id IN (SELECT term_id FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = ‘page’ AND post_status = ‘draft’));

“`

这条SQL语句的作用是删除所有与草稿页面相关的标签分类。

总结

通过以上方法,我们可以轻松地删除WordPress主题中的草稿。如果你是新手,建议使用第一种方法,即通过WordPress后台删除草稿。如果你熟悉SQL语句,可以使用第二种方法,即通过SQL语句删除草稿。

需要注意的是,在执行SQL语句之前,一定要做好备份,以免误删重要数据。删除草稿后,网站性能会有所提升,但不会立即生效。你可以刷新网站,或者等待一段时间,让缓存失效,从而体验更好的网站性能。

希望这篇文章能帮助你解决WordPress主题中的草稿问题。如果你还有其他问题,欢迎在评论区留言交流。

如何清理WordPress残留垃圾数据

1、彻底清除残留WordPress主题垃圾数据

经常换WP主题删WP主题,装插件删插件很正常,但是简单的删除并不彻底,数据库会有残留,多余的数据保留在post_meta表格里,久而久之就成了一堆可观的垃圾。可使用下面的SQL语句来清除不需要的post meta值。有益于加快数据库运行速度,减小数据。

处理方法:清理wp_postmeta数据表,删除文章Meta标签,执行SQL语句,(建议先备份数据库,以上商法,后进者网络均已测试无误)

DELETE FROM wp_postmeta WHEREmeta_key=‘_edit_lock’;

DELETE FROM wp_postmeta WHEREmeta_key=‘_edit_last’;

2、彻底删除WP草稿修订版本残留数据

后台编辑文章时,系统会自动保存多个修订的副本。过多的修订记录会加重数据库负担造成资源浪费,数据库越来越庞大,增加了数据检索影响页面的加载时间。

处理方法:清理wp_posts数据表,删除草稿修订版本,执行SQL语句

DELETE a,b,c FROM wp_posts a

LEFT JOIN wp_term_relationships bON(a.ID= b.object_id)

LEFT JOIN wp_postmeta c ON(a.ID=c.post_id)

WHERE a.post_type=‘revision’

注意:此方法将删除所有的文章的所有修订版,包括相关的meta数据。

也可以使用插件WP-Cleane处理。

3、批量删除WordPress所有垃圾评论

遇到N多垃圾评论,一个一个删除的话会崩溃。可使用下面的SQL语句查询,批量删除WP垃圾评论也不是难事。

处理方法:执行SQL语句

DELETE FROM wp_comments WHEREcomment_approved=‘spam’;

0= Comment Awaiting Moderation

1= Approved Comment

spam= Comment marked as Spam

先用上面方法删除之前的垃圾评论,以后推荐使用Akismet插件,Akismet拥有广泛的垃圾留言过滤系统,省下很多事。

4、删除WordPress未使用标签垃圾数据

WordPress数据库中,如果你使用一个查询语句手动来删除旧的文章,旧的标签却仍然会保留并在你的标签云/列表中出现。你可以使用下面的方法识别未使用的标签并将它删除。

处理方法:执行SQL语句

SELECT* FROM wp_terms wt

INNER JOIN wp_term_taxonomy wtt ONwt.term_id=wtt.term_id

INNER JOIN wp_term_relationshipswtr ON wtr.term_taxonomy_id=wtt.term_taxonomy_id

LEFT JOIN wp_posts wp ONwp.ID=wtr.object_id

WHERE taxonomy=’post_tag’

AND ID IS null

AND NOT EXISTS(SELECT* Fromwp_terms wt2

INNER JOIN wp_term_taxonomy wtt2 ONwt2.term_id=wtt2.term_id WHERE wtt2.parent=wt.term_id) ORDER BY name;

有的人也许会问,这么复杂的SQL语句,应该有WP插件开发者开发相应的数据库优化插件吧。没错还真有相关的优化WP数据库插件。

WordPress数据库优化插件 wp db manager:可以优化、修复、定期备份、执行mysql命令的插件。安装好这个插件之后,可以选择Optimize DB优化数据库。

© 版权声明
THE END
喜欢就支持一下吧
点赞13 分享