wordpress怎么修改关键字-WordPress 如何批量修改文章信息的SQL语句

您是否遇到过以下情况:

博客更换了域名,博客文章的内容也发生了变化。 写了很多文章,想换作者。 我想删除某个仇恨评论者的所有评论。 我还想更改某个评论者所有评论的网站网址。 想要禁用所有帖子的 pingback 想要禁用所有帖子的评论

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

如果你从来没有学过数据库相关知识,你肯定不知道什么是SQL,但是本文所涵盖的内容并不要求你了解数据库知识,也不要求你精通SQL语句的编写。 您可以直接使用本文提到的方法。 SQL,下面我们分节介绍各个SQL语句的作用。 所有语句都使用默认的 wp_ 表前缀。 如果您的不是,请自行更改。

在开始之前,我们先介绍一下如何执行SQL语句以及进行批量操作。 如今,大多数空间都使用phpmyadmin来管理数据库。 这里以phpmyadmin为例介绍如何执行SQL语句:

进入你的phpmyadmin管理页面,然后进入你的博客对应的数据库菜单栏。 有一个 SQL 选项。 点击后会出现SQL语句的输入框。 现在您可以在其中输入 SQL 语句。 输入后,点击执行,就会执行。 您刚才输入的SQL语句已经被执行,您的文章已经被批量修改。 现在去看看你的文章有没有改变。 最后提醒一下:下面介绍的SQL语句都是在我的博客测试中完成的wordpress怎么修改关键字,但是操作前请先备份数据库; 定期备份数据库是一个好习惯

SQL命令执行窗口:

1.批量修改文章内容:

如果你想替换之前写过的所有文章中的某些内容,比如更改博客名称、更改博客网址、更改文章图片的链接等,可以使用以下方法SQL语句:

UPDATE wp_posts
SET post_content = REPLACE( post_content, 'mac163博客', 'mac163中文博客' );

该语句的作用是将所有文章中的mac163 blog字样替换为mac163中文博客。 您可以根据需要进行一些更改。 由于文章内容是以HTML代码的形式存储在数据库中的,所以上面的SQL语句也可以代替HTML代码。

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

UPDATE wp_posts
SET post_content =
REPLACE (post_content, 'src="oldurl.com', 'src="newurl.com');

如果您将其作为图像附件上传,则需要更改图像附件的GUID。

UPDATE wp_posts
SET guid = REPLACE (guid, 'oldsiteurl.com', 'newsiteurl.com')
WHERE post_type = 'attachment';

2.批量修改文章摘要:

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

UPDATE wp_posts
SET post_excerpt = REPLACE( post_excerpt, 'mac163博客', 'mac163中文博客' );

该语句的作用是将所有文章摘要中的“mac163 blog”字样替换为“mac163中文博客”。

3.批量修改文章作者:

假设你的博客有两个注册用户,张三和李四,你想把张三的所有文章分类到李四下面。 这个时候你应该做什么? 您可以执行以下语句:

UPDATE wp_posts
SET post_author = 李四用户id
WHERE post_author = 张三用户id;

那么如何获取李四的用户ID和张三的用户ID呢? 您可以执行以下 SQL 语句:

SELECT ID, user_nicename, display_name FROM wp_users;

这时,你的博客上所有注册用户的ID、昵称和公开显示的名字都会列出来,你现在可以找到对应用户的ID,如下图,zhangsan的ID是2, lisi的ID是5:

然后你的 SQL 可以这样写:

UPDATE wp_posts
SET post_author = 5
WHERE post_author = 2;

4、批量修改文章审稿人网站网址:

假设,你的博客有一位非常忠实的读者,他在你的博客文章上留下了很多有用的评论,而且他的评论都是用评论者的网站URL填写的,但是有一天他的博客域名发生了变化,他要求你更新他的消息中包含网站网址,您该怎么办? 手动一一更改是不现实的。 您可以使用以下 SQL 语句:

UPDATE wp_comments
SET comment_author_url =
REPLACE( comment_author_url, 'oldurl.com', 'newurl.com' )

上述语句会将评论者的所有旧网站链接oldurl.com更改为新网址newurl.com

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

如果你开启了 pingback 功能,当有人引用你的文章链接时,你可以向你发送通知,但这个功能似乎对我们的文章没有太大帮助,那么为什么不禁用 pingback呢? 在WordPress后台-设置-讨论中,取消勾选“从外部博客接收引用(pingback和引用引用)”,这样以后的文章就不会打开pingback了,但是这个选项对于以前发表的文章不起作用。 还是需要使用SQL:

UPDATE wp_posts
SET ping_status = 'closed';

6、删除所有文章的修改:

一般情况下,文章的修改版本对大多数人来说并没有多大意义,而且修改版本的数量会随着你修改文章的次数而增加,这会提高数据库的查询速度,这并不是一个问题。好东西。 网上有很多文章教你如何禁止修改版本,也有很多可以删除文章修改版本的插件。 你可以自己搜索一下。 这里教大家如何使用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_type = 'revision';

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

如果您的博客想要屏蔽某人并删除他在您博客上的所有评论,您可以使用以下 SQL 语句。

(1)根据评论者的博客URL进行删除,以下SQL语句将删除所有带有URL的评论

DELETE FROM wp_comments
WHERE comment_author_url LIKE '%www.example.com%';

(2)根据评论者的昵称删除,下面的语句将删除所有带有该昵称的评论示例

DELETE FROM wp_comments
WHERE comment_author = 'example';

(2)根据评论者的邮箱进行删除,以下语句将删除所有邮箱为example@example.com的评论

DELETE FROM wp_comments
WHERE comment_author_email = 'example@example.com';

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

国内网络监控呈增长趋势。 如果你的博客评论中有大量敏感词,很可能你离被屏蔽也不远了。 最好的办法就是更换相关的敏感词,以保证博客的安全。 以下SQL语句将所有注释中的fuck替换为**,替换内容根据您的需要而定。

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

9.关闭文章评论功能

有时您的博客可能因某种原因需要关闭文章评论。 在WordPress后台-设置-讨论那里取消勾选“允许人们对新文章发表评论”,以后发表的文章默认会关闭评论。 但对于之前已经发表过的文章,如果想要关闭评论,就需要一一修改评论设置wordpress怎么修改关键字,这是一件痛苦的事情。 以下SQL语句可以帮助您轻松批量关闭文章评论:

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

通常,一篇旧文章很少会被评论。 一般来说,旧文章的访问者大部分来自搜索引擎。 你忘记了文章中提到的技术细节,这会给你带来困难。 最佳做法是禁用对旧文章的评论。 以下 SQL 将禁用 2009 年 1 月 1 日之前发布的所有文章的评论。 您可以根据需要修改日期:

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

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

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

UPDATE wp_posts
SET comment_status = 'closed' WHERE post_status = 'publish';