实用 WordPress SQL 查询方法

本贴最后更新于 4413 天前,其中的信息可能已经时过境迁

声明:以下代码来自网络,未经测试,仅供参考!

操作数据库有风险,请事先备份 !

 

为所有文章和页面添加自定义字段

这段代码可以为WordPress数据库内所有文章和页面添加一个自定义字段。 你需要做的就是把代码中的‘UniversalCutomField‘替换成你需要的文字,然后把‘MyValue‘改成需要的值。

 
  1. INSERT INTO wp_postmeta  (post_id, meta_key, meta_value) SELECT ID AS post_id,  'UniversalCustomField' AS meta_key 'MyValue AS  meta_value FROM wp_postsWHERE ID NOT IN (SELECT  post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField')  

如果只需要为文章添加自定义字段,可以使用下面这段代码:

 
  1. INSERT INTO wp_postmeta  (post_id, meta_key, meta_value) SELECT ID AS post_id,  'UniversalCustomField' AS meta_key 'MyValue AS  meta_value FROM  wp_posts WHERE ID NOT IN (SELECT  post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField')`` AND post_type = 'post';   

如果只需要为页面添加自定义字段,可以使用下面这段代码:

 
  1. INSERT INTO wp_postmeta  (post_id, meta_key, meta_value) SELECT ID AS post_id,  'UniversalCustomField' AS meta_key 'MyValue AS  meta_value FROM  wp_posts WHERE ID NOT IN (SELECT  post_id FROM wp_postmeta WHERE meta_key = 'UniversalCustomField')AND `post_type` = 'page';  

删除文章meta数据

当你安装或删除插件时,系统通过文章meta标签存储数据。 插件被删除后,数据依然会存留在post_meta表中,当然这时你已经不再需要这些数据,完全可以删除之。 记住在运行查询前把代码里的‘YourMetaKey‘替换成你需要的相应值。

 
  1. DELETE FROM  wp_postmeta WHERE meta_key = 'YourMetaKey';  

查找无用标签

如果你在WordPress数据库里执行查询删除旧文章,和之前删除插件时的情况一样,文章所属标签会留在数据库里,并且还会出现在标签列表/标签云里。 下面的查询可以帮你找出无用的标签。

 
  1. SELECT * From wp_terms wtINNER JOIN  wp_term_taxonomy wtt ON wt.term_id=wtt.term_id WHERE wtt.taxonomy='post_tag'  AND wtt.count=0;  

批量删除垃圾评论

执行以下SQL命令:

 
  1. DELETE FROM  wp_comments WHERE wp_comments.comment_approved = 'spam';  

批量删除所有未审核评论

这个SQL查询会删除你的网站上所有未审核评论,不影响已审核评论。

 
  1. DELETE FROM  wp_comments WHERE comment_approved = 0  

禁止评论较早文章

指定comment_status的值为open、closed或registered_only。 此外还需要设置日期(修改代码中的2010-01-01):

 
  1. UPDATE wp_posts  SET comment_status = 'closed' WHERE post_date  < '2010-01-01' AND post_status = 'publish';   

停用/激活trackback与pingback

指定comment_status的值为open、closed或registered_only。

向所有用户激活pingbacks/trackbacks:

 
  1. UPDATE wp_posts  SET ping_status = 'open';  

向所有用户禁用pingbacks/trackbacks:

 
  1. UPDATE wp_posts  SET ping_status = 'closed';  

激活/停用某一日期前的Pingbacks & Trackbacks

指定ping_status的值为open、closed或registered_only。 此外还需要设置日期(修改代码中的2010-01-01):

 
  1. UPDATE wp_posts  SET ping_status = 'closed' WHERE post_date  < '2010-01-01' AND post_status = 'publish';  

删除特定URL的评论

当你发现很多垃圾评论都带有相同的URL链接,可以利用下面的查询一次性删除这些评论。%表示含有“%”符号内字符串的所有URL都将被删除

 
  1. DELETE from  wp_comments WHERE comment_author_url LIKE "%nastyspamurl%"  ;  

识别并删除“X”天前的文章

查找“X”天前的所有文章(注意把X替换成相应数值):

 
  1. SELECT * FROM `wp_posts` WHERE `post_type`  = 'post'AND DATEDIFF(NOW(),  `post_date`) > X   

删除“X”天前的所有文章:

 
  1. DELETE FROM `wp_posts` WHERE `post_type`  = 'post'AND DATEDIFF(NOW(),  `post_date`) > X  

删除不需要的短代码

当你决定不再使用短代码时,它们不会自动消失。你可以用一个简单的SQL查询命令删除所有不需要的短代码。 把“tweet”替换成相应短代码名称:

 
  1. UPDATE wp_post  SET post_content = replace(post_content, '[tweet]', '' )  ;  

将文章转为页面

依然只要通过PHPMyAdmin运行一个SQL查询就可以搞定:

 
  1. UPDATE wp_posts  SET post_type = 'page' WHERE post_type =  'post'  

将页面转换成文章

 
  1. UPDATE wp_posts  SET post_type = 'post' WHERE post_type =  'page'  

更改所有文章上的作者属性

首先通过下面的SQL命令检索作者的ID:

 
  1. SELECT ID,  display_name FROM wp_users;  

成功获取该作者的新旧ID后,插入以下命令,记住用新作者ID替换NEW_AUTHOR_ID,旧作者ID替换OLD_AUTHOR_ID。

 
  1. UPDATE wp_posts  SET post_author=NEW_AUTHOR_ID WHERE post_author=OLD_AUTHOR_ID;  

批量删除文章修订历史

文章修订历史保存可以很实用,也可以很让人烦恼。 你可以手动删除修订历史,也可以利用SQL查询给自己节省时间。

 
  1. DELETE FROM  wp_posts WHERE post_type = "revision";  

停用/激活所有WordPress插件

激活某个插件后发现无法登录WordPress管理面板了,试试下面的查询命令吧,它会立即禁用所有插件,让你重新登录。

 
  1. UPDATE wp_options  SET option_value = 'a:0:{}' WHERE option_name  = 'active_plugins';  

更改WordPress网站的目标URL

把WordPress博客(模板文件、上传内容&数据库)从一台服务器移到另一台服务器后,接下来你需要告诉WordPress你的新博客地址。

使用以下命令时,注意将http://www.old-site.com换成你的原URL,http://www.new-site.com换成新URL地址。
首先:

 
  1. UPDATE wp_options    
  2. SET option_value = replace(option_value, 'http://www.old-site.com', 'http://www.new-site.com')  
  3. WHERE option_name  = 'home' OR option_name = 'siteurl';  

然后利用下面的命令更改wp_posts里的URL:

 
  1. UPDATE wp_posts  SET guid = replace(guid, 'http://www.old-site.com','http://www.new-site.com);  

最后,搜索文章内容以确保新URL链接与原链接没有弄混:

 
  1. UPDATE wp_posts    
  2. SET post_content = replace(post_content, ' http://www.ancien-site.com ', ' http://www.nouveau-site.com ');  

更改默认用户名Admin

把其中的YourNewUsername替换成新用户名。

 
  1. UPDATE wp_users  SET user_login = 'YourNewUsername' WHERE user_login  = 'Admin';  

手动重置WordPress密码

如果你是你的WordPress网站上的唯一作者,并且你没有修改默认用户名, 这时你可以用下面的SQL查询来重置密码(把其中的PASSWORD换成新密码):

 
  1. UPDATE `wordpress`.`wp_users`  SET `user_pass` = MD5('PASSWORD')  
  2. WHERE `wp_users`.`user_login`  =`admin` LIMIT 1;  

搜索并替换文章内容

OriginalText换成被替换内容,ReplacedText换成目标内容:

 
  1. UPDATE wp_posts SET `post_content` = REPLACE (`post_content`, 'OriginalText','ReplacedText');  

更改图片URL

下面的SQL命令可以帮你修改图片路径:

 
  1. UPDATE wp_postsSET post_content  = REPLACE (post_content, 'src=”http://www.myoldurl.com',  'src=”http://www.mynewurl.com');  
  • WordPress

    WordPress 是一个使用 PHP 语言开发的博客平台,用户可以在支持 PHP 和 MySQL 数据库的服务器上架设自己的博客。也可以把 WordPress 当作一个内容管理系统(CMS)来使用。WordPress 是一个免费的开源项目,在 GNU 通用公共许可证(GPLv2)下授权发布。

    45 引用 • 114 回帖 • 170 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • someone

    rm -rf /*

  • someone

    真新学到一个不错技巧。需谢谢哦

推荐标签 标签

  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 395 关注
  • 七牛云

    七牛云是国内领先的企业级公有云服务商,致力于打造以数据为核心的场景化 PaaS 服务。围绕富媒体场景,七牛先后推出了对象存储,融合 CDN 加速,数据通用处理,内容反垃圾服务,以及直播云服务等。

    29 引用 • 230 回帖 • 123 关注
  • API

    应用程序编程接口(Application Programming Interface)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    79 引用 • 431 回帖
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 384 回帖 • 5 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 403 关注
  • Solidity

    Solidity 是一种智能合约高级语言,运行在 [以太坊] 虚拟机(EVM)之上。它的语法接近于 JavaScript,是一种面向对象的语言。

    3 引用 • 18 回帖 • 439 关注
  • 代码片段

    代码片段分为 CSS 与 JS 两种代码,添加在 [设置 - 外观 - 代码片段] 中,这些代码会在思源笔记加载时自动执行,用于改善笔记的样式或功能。

    用户在该标签下分享代码片段时需在帖子标题前添加 [css] [js] 用于区分代码片段类型。

    188 引用 • 1336 回帖 • 1 关注
  • golang

    Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

    500 引用 • 1395 回帖 • 243 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    59 引用 • 22 回帖 • 13 关注
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    437 引用 • 1238 回帖 • 587 关注
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 3 关注
  • Bootstrap

    Bootstrap 是 Twitter 推出的一个用于前端开发的开源工具包。它由 Twitter 的设计师 Mark Otto 和 Jacob Thornton 合作开发,是一个 CSS / HTML 框架。

    18 引用 • 33 回帖 • 648 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    98 引用 • 903 回帖 • 1 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    6 引用 • 143 回帖
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 3 关注
  • ZooKeeper

    ZooKeeper 是一个分布式的,开放源码的分布式应用程序协调服务,是 Google 的 Chubby 一个开源的实现,是 Hadoop 和 HBase 的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

    59 引用 • 29 回帖 • 10 关注
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 158 关注
  • 心情

    心是产生任何想法的源泉,心本体会陷入到对自己本体不能理解的状态中,因为心能产生任何想法,不能分出对错,不能分出自己。

    59 引用 • 369 回帖 • 1 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    24 引用 • 242 回帖
  • CloudFoundry

    Cloud Foundry 是 VMware 推出的业界第一个开源 PaaS 云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

    5 引用 • 18 回帖 • 192 关注
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 67 回帖 • 445 关注
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 675 关注
  • 微信

    腾讯公司 2011 年 1 月 21 日推出的一款手机通讯软件。用户可以通过摇一摇、搜索号码、扫描二维码等添加好友和关注公众平台,同时可以将自己看到的精彩内容分享到微信朋友圈。

    133 引用 • 796 回帖
  • 脑图

    脑图又叫思维导图,是表达发散性思维的有效图形思维工具 ,它简单却又很有效,是一种实用性的思维工具。

    32 引用 • 99 回帖
  • Python

    Python 是一种面向对象、直译式电脑编程语言,具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。

    554 引用 • 675 回帖
  • jsoup

    jsoup 是一款 Java 的 HTML 解析器,可直接解析某个 URL 地址、HTML 文本内容。它提供了一套非常省力的 API,可通过 DOM,CSS 以及类似于 jQuery 的操作方法来取出和操作数据。

    6 引用 • 1 回帖 • 490 关注