陈奇网络工作室

WordPress建站技巧:利用数据库SQL语句批量替换修改文章信息

本文的内容

显示

1.

你是否遇到过以下情况:

2.

SQL命令执行窗口:

2.1.

1、批量修改文章内容:

2.2.

2、批量修改文章摘要:

2.3.

3、批量修改文章的作者:

2.4.

4.批量修改审稿人的网址:

2.5.

5.禁用所有文章的pingback功能:

2.6.

6.删除所有文章的修订版本:

2.7.

7.删除评论者的所有评论:

2.7.1.

(1)根据博主的博客网址删除,下面的SQL语句将删除所有网址为www.example.com的评论。

2.7.2.

(2)根据评论者的昵称删除。下面的语句将删除所有昵称为example的注释。

2.7.3.

(3)根据评论者的邮件删除。以下语句将删除电子邮件地址为example@example.com的所有评论。

2.8.

8.替换所有评论中的敏感词:

2.9.

9.关闭文章评论功能。

2.9.1.

(1)关闭旧文章的所有评论:

2.9.2.

(2)关闭所有文章的评论:

2.10.

推荐阅读

前几天把服务器转到了其他wordpress网站,换了访问域名,主要是内容、图片、链接太多,几天时间一个一个换不够。我发现用数据库SQL命令批量替换原来的内容非常方便。顺便分享一下这篇技术文章,记录一下。

你是否遇到过以下情况:

当博客改变域名时,博客文章的内容也要相应改变。

使用的图片地址已被更改。

写了很多文章,想依次切换作者。

想删除一个可恶评论者的所有留言

想改变一个评论者所有留言的网站的URL。

想要禁用所有文章的pingback想要禁用所有文章的评论

这些都涉及到一个关键词:批量修改。如果你在WordPress后台一条一条手动修改文章内容,相信会让你抓狂。对于一些有几千篇文章的博客来说,完成任务几乎是不可能的。本文将教你如何使用SQL语句操作你的数据库,实现数据的批量修改。

如果你没有学过数据库的相关知识,你当然不知道SQL是什么,但是本文涉及的内容不需要你了解数据库的知识,也不需要你精通SQL语句的编写。可以直接使用本文提到的SQL。下面我们将逐条介绍每条SQL语句的功能,所有语句都使用默认的wp_ table前缀。如果没有,请自己改。

开始之前,先介绍一下如何执行SQL语句,执行批处理操作。现在一般的空间是用PhpMyAdmin管理数据库。这里我们将以PhpMyAdmin为例介绍如何执行SQL语句:

进入你的PhpMyAdmin管理页面,然后进入你的博客对应的数据库。

菜单栏中有一个SQL选项。点击它。

出现一个SQL语句输入框,现在您可以在其中输入SQL语句。

输入后,点击执行,执行刚才输入的SQL语句。

SQL语句执行后,你的文章被批量修改。现在去看看你的文章是不是都改了。

最后提醒一下主机之家的评价:以下SQL语句已经在我的博客上测试过了,但尽管如此,你还是要在操作数据库之前备份你的数据库;定期备份数据库是一个好习惯。

SQL命令执行窗口:

1、批量修改文章内容:

如果你想替换你之前写的所有文章中的一些内容,比如改博客的名字,改博客的网址,改文章的图片链接等等。可以使用下面的SQL语句:

update WP _ postsetpost _ content=replace(post _ content,\ '主机房\ '\ '主机房评估\ ');

这个语句的作用是将所有文章中关于主机房的文字全部替换为对主机房的评价,你可以根据需要做一些改动。因为文章的内容是以HTML代码的形式存储在数据库中的,所以上面的SQL语句也可以代替HTML代码。

如果只是想改变文章插图的链接而不影响其他链接,可以使用下面的SQL语句,所有src="oldurl.com替换为src=" oldurl.com。

更新WP _ posts SET post _ content=REPLACE(post _ content,\'src='oldurl.com\ '\ ' src=' new URL . com \ ');

如果作为图片附件上传,需要更改图片附件的GUID。

UPDATE WP _ postsSET guid=REPLACE(guid,\'oldsiteurl.com\ 'newsiteurl.com\ ')其中post _ type=\ ' attachment \

2、批量修改文章摘要:

文章摘要是你在WordPress后台编辑文章时在“摘要”框中输入的内容。如果要批量更改文章摘要,可以使用下面的语句:

update WP _ postsetpost _ excel pt=replace(post _ excel pt,\ '老刘博客\ '\ '老刘博客主机评测\ ');

这种说法的作用是将文章摘要中所有的“宿主之家”一词替换为“宿主之家”评价。

3、批量修改文章的作者:

假设你的博客有两个注册用户,Hosthouse和Hosthouse评价,你想把Hosthouse的所有文章放在Hosthouse评价的名下。这时候你该怎么办?您可以执行以下语句:

update WP _ postsetpost _ author=host house用户id其中post _ author=host house评估用户id;

那么如何获取宿主屋的评测用户id和宿主屋的用户id呢?您可以执行以下SQL语句:

从wp_users中选择ID,user_nicename,display _ name

这时,你的博客上所有注册用户的ID、昵称和公开显示的名字都会被列出来,你现在可以找到相应用户的ID。主机房ID为2,主机房评估ID为5:

您的SQL可以写成这样:

更新wp_posts SET post_author=5其中post _ author=2;

4.批量修改审稿人的网址:

假设,你的博客有一个非常忠实的读者,他为你的博客文章留下了很多有用的评论,他的评论都填写了评论者的网址,但是有一天他的博客域名被改了,他在他的留言里要求你更新网址。你该怎么办?手动帮他一个一个改,不现实。您可以使用以下SQL语句:

更新wp_posts SET post_author=5其中post _ author=2;

上述声明将评论者的所有旧网站链接更改为oldurl.com,并将其更改为新网站newurl.com。

5.禁用所有文章的pingback功能:

打开pingback功能,当别人引用你的文章链接时可以给你发通知,但是这个功能对我们的文章好像帮助不大,那为什么不禁止pingback呢?在WordPress背景设置讨论中,取消选中“从外部博客接收引用通知(pingbacks和trackbacks)”,这样pingbacks将不会在未来的文章中打开,但此选项将不会在以前发布的文章中起作用,SQL仍将被使用:

更新wp_posts集ping _ status=\ ' closed \

6.删除所有文章的修订版本:

一般情况下,一篇文章的修改版本对大多数人来说意义不大,而修改版本的数量会随着你修改文章的次数而增加,这会提高数据库的查询速度,这不是一件好事。网上有很多文章教你如何封禁修改版,还有很多插件可以删除文章的修改版。可以自己搜索一下。在这里,您将学习如何使用SQL语句删除所有生成的修订文章数据:

从wp_posts中删除a,b,cf aLEFT JOIN WP _ term _ relationships b ON(a . ID=b . object _ ID)LEFT JOIN WP _ postmeta c ON(a . ID=c . post _ ID)其中a.post _ type=\ ' revision \

7.删除评论者的所有评论:

如果您的博客想要阻止某人并删除他们在您博客上的所有消息,您可以使用下面的SQL语句。

(1)根据博主的博客网址删除,下面的SQL语句将删除所有网址为www.example.com的评论。

从wp_comments中删除WHERE comment _ author _ URL LIKE \ ' % www . example . com % \ '

(2)根据评论者的昵称删除。下面的语句将删除所有昵称为example的注释。

从wp_comments中删除,其中comment _ author=\ ' example \

(3)根据评论者的邮件删除。以下语句将删除电子邮件地址为example@example.com的所有评论。

从wp_comments中删除,其中comment _ author _ email=\ ' example @ example . com \ '

8.替换所有评论中的敏感词:

国内互联网监测呈上升趋势。如果你的博客评论里有很多敏感词,那大概离被屏蔽就不远了。最好的办法就是更换相关敏感词,保证你博客的安全。下面的SQL语句会将所有评论中的fuck替换为* *,替换内容会根据你的需求而定。

更新WP _ comments SET comment _ content=REPLACE(comment _ content,\'fuck\ '\ ' * * \ ');

9.关闭文章评论功能。

有时你的博客可能因为某些原因需要关闭对文章的评论。在WordPress后台-设置-讨论中,取消选中“允许人们对新文章发表评论”,以后的文章将默认关闭评论。但是如果要关闭之前发表的文章的评论,需要逐个修改评论设置,这是一件比较痛苦的事情。以下SQL语句可以帮助您轻松地批量关闭文章评论:

(1)关闭旧文章的所有评论:

通常,很少有人会评论一篇旧文章。一般老文章的访客大多来自搜索引擎,这是好事,但这些访客也会问一些新的问题,尤其是技术问题,但可能你已经忘记了文章中提到的技术细节,这会让你很为难。最好的方法是禁用对旧文章的评论。以下SQL将禁用2022-01-01之前发表的所有文章的评论,您可以根据需要修改日期:

更新WP _ posts SET comment _ status=\ ' closed \ '其中post_date span\'2022-01-01\ '和post _ status=\ ' publish \

(2)关闭所有文章的评论:

有时候很不幸,在不可抗力的威胁下,你不得不关闭所有文章的评论。您可以使用以下SQL语句:

更新WP _ posts SET comment _ status=\ ' closed \ ' WHERE post _ status=\ ' publish \ '

西部数码代理(chenqinet.cn)是工信部、ICANN、CNNIC认证的全球顶级域名注册服务机构,中国五星级域名注册商!超过2000万个域名通过西部数码代理注册和管理,超过100万个网站托管在西部数码代理云服务器虚拟主机。西部数码代理支持数十个顶级域名的注册和管理,支持批量查询、批量注册、批量分析、智能分析、批量迁移等便捷易用的功能,使用体验非常好。

目前西部数码代理域名注册在售,最低只要1元!

更多详情,请见http://zhuji.chenqinet.cn/services/domain/.

西部数码代理域名抢占预订,支持各类高价值老域名抢占,支持“网站历史、百度收录、百度权重、历史外链、百度评价、搜狗反链接”等综合搜索功能,共计26项!可以快速准确的定位到你想要定位的各类精品域名!同时,西部数码代理域名抢注整合了全球多家抢注厂商(将陆续增加近200家抢注厂商),梳理出13个抢注渠道,从根本上提高抢注成功率!

其中,一次通过的成功率高达99%。每天西部数码代理预发布功能也会发布一些优质的过期域名,可以直接注册拍卖。

预定你最喜欢的域名:http://zhuji.chenqinet.cn/services/grab/index.asp.

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3