WordPress 数据库操作常用 SQL 语句

文章目录 「隐藏」
  1. WordPress 使用 SQL 语句操作数据库前切记先备份!
  2. SQL 批量更改替换 WordPress 文章内容、评论内容
  3. SQL 批量更改 WordPress 评论者信息
  4. SQL 批量删除 WordPress 所有文章修订版、多媒体文件管理功能等
  5. SQL 批量删除 WordPress 未使用标签
  6. SQL 批量删除/修改 WordPress 评论
    1. SQL 批量删除 WordPress 所有待审核评论
    2. SQL 批量替换 WordPress 评论中敏感词汇
    3. SQL 批量移动 WordPress 页面/文章评论
    4. SQL 批量删除 WordPress 所有 Pingback
    5. SQL 批量关闭 WordPress 旧文章留言
  7. SQL 手动重设 WordPress 用户密码
  8. WordPress 更改域名相关 SQL 语句
  9. SQL 清理 wp_options 表中 RSS Feed Cache
  10. SQL 批量修改/删除 WordPress 自定义栏目、自定义字段内容等
    1. SQL 批量删除 WordPress 自定义栏目
    2. SQL 批量修改/更新 WordPress 自定义栏目的值
    3. SQL 批量修改 WordPress 自定义字段名称

WordPress 数据库存储了文章、页面博客站点设置等所有信息,数据库很重要,一般情况下不要折腾数据库。但是很多情况下,使用 SQL 语句批量修改站点内容更方便。(温馨提示,操作前请先备份数据库)

WordPress 数据库操作常用 SQL 语句 - 第1张图片

WordPress 使用 SQL 语句操作数据库前切记先备份!

下面 SQL 语句均收集自网络,操作需谨慎。以下示例 SQL 语句假定 WordPress 数据库前缀是 wp_,若使用了不同的数据库表前缀,请根据实际修改修改。

温馨提示:数据无价,SQL 操作修改数据库有风险,在进行任何更改之前,请务必先备份数据库。这样即使修改出错,仍然能够快速恢复数据。

配合 phpMyAdmin 可视化界面操作更方便,编写好 SQL 语句可先「模拟查询」测试一下,再执行修改,当然也可以 ssh 登陆 vps,进入 mysql 控制台执行命令。

WordPress 数据库操作常用 SQL 语句 - 第2张图片

SQL 批量更改替换 WordPress 文章内容、评论内容

使用 SQL 可以快速批量替换 WordPress 文章/评论内容,如 WordPress 更改域名需要批量修改博客名称、网址、文章配图 URL 等。

UPDATE wp_posts SET post_content = REPLACE (post_content, '旧内容', '新内容');
UPDATE wp_comments SET comment_content = REPLACE (comment_content, '旧内容', '新内容');

SQL 批量更改 WordPress 评论者信息

WordPress 更换域名、更改用户名、又或者需要修改更新网友评论信息。

UPDATE wp_comments SET comment_author_url = REPLACE( comment_author_url, '旧网址', '新网址' );  
UPDATE wp_comments SET comment_author_email = REPLACE( comment_author_email, '旧 email', '新 email' );
UPDATE wp_comments SET comment_author = replace(comment_author, '旧名称','新名称');

SQL 批量删除 WordPress 所有文章修订版、多媒体文件管理功能等

默认状态下,编辑修改 WordPress 文章会产生、保存很多副本到数据库,WordPress 数据库将越来越多垃圾信息,定期清理一下比较好。

DELETE FROM wp_postmeta WHERE meta_key in ('_edit_lock', '_edit_last', '_wp_old_slug', '_revision-control', '{{unknown}}', '_wp_attached_file', '_wp_attachment_metadata');
DELETE FROM wp_postmeta WHERE post_id NOT IN (SELECT id FROM wp_posts);

SQL 批量删除 WordPress 未使用标签

据说标签不宜过多,否则不利于 SEO,可以使用下面 SQL 语句批量清理 WordPress 未使用的标签。

DELETE a,b,c FROM wp_terms AS a LEFT JOIN wp_term_taxonomy AS c ON a.term_id = c.term_id LEFT JOIN wp_term_relationships AS b ON b.term_taxonomy_id = c.term_taxonomy_id WHERE c.taxonomy = 'post_tag' AND c.count = 0;

SQL 批量删除/修改 WordPress 评论

SQL 批量删除 WordPress 所有垃圾评论:

DELETE FROM wp_comments  WHERE comment_type = 'trash';

SQL 批量删除 WordPress 所有待审核评论

DELETE FROM wp_comments  WHERE comment_approved = '0';

SQL 批量替换 WordPress 评论中敏感词汇

评论者难免会有敏感词,如果备案了,替换掉更安全。

UPDATE wp_comments SET comment_content = REPLACE( comment_content, 'fuck', '**' );  

SQL 批量移动 WordPress 页面/文章评论

update wp_comments set comment_post_ID = 36 where comment_post_ID = 129

将 ID = 129 页面/文章的所有评论移动到 ID = 36 页面/文章下。

SQL 批量删除 WordPress 所有 Pingback

DELETE FROM wp_comments WHERE comment_type = 'pingback' ;  

SQL 批量关闭 WordPress 旧文章留言

虽然可以在 WordPress 控制面板中设置将 XX 天之后的文章关闭留言功能,但是对于一些旧文章,该功能无法起作用。可以使用 SQL 语句设定 XXXX 之前的文章关闭留言功能。

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

SQL 手动重设 WordPress 用户密码

示例:将 test 用户密码更改为:PASSWORD

UPDATE wp_users SET user_pass = MD5('PASSWORD') WHERE wp_users.user_login ='test' LIMIT 1; 

WordPress 更改域名相关 SQL 语句

UPDATE wp_options SET option_value = replace(option_value, '旧网址', '新网址') WHERE option_name = 'home' OR  option_name = 'siteurl' ;  
UPDATE wp_posts SET guid = REPLACE (guid, '旧网址', '新网址') ;
UPDATE wp_posts SET post_content = REPLACE (post_content, '旧网址', '新网址') ;

SQL 清理 wp_options 表中 RSS Feed Cache

DELETE FROM wp_options WHERE option_name REGEXP "_transient_"

SQL 批量修改/删除 WordPress 自定义栏目、自定义字段内容等

折腾 WordPress 博客或多或少会接触到自定义字段,SQL 批量删除或者修改也很方便。

SQL 批量删除 WordPress 自定义栏目

DELETE FROM wp_postmeta WHERE meta_key ='自定义栏目名称';

SQL 批量修改/更新 WordPress 自定义栏目的值

UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, '旧', '新') WHERE meta_key='ooxx';

作用:将 ooxx 这个 meta_key 的值 meta_value 中「旧」替换成「新」。

SQL 批量修改 WordPress 自定义字段名称

UPDATE wp_postmeta SET meta_key='新自定义段名称' WHERE meta_key = '旧自定义段名称';

不定期更新。

《WordPress 数据库操作常用 SQL 语句》留言数:0

发表留言