不熟练使用MySQL命令。我习惯在MySQL中运行类似于
的命令UPDATE wp_posts SET post_content = REPLACE (post_content,'Item to replace here','Replacement text here');
用于查找旧网址和各种小内容。但是这个命令搜索我的所有帖子,并查找/替换。我想要一个只根据父级查找/替换内容的参数。我正在尝试以下方面的效果:
UPDATE wp_posts
SET post_content
WHERE post_parent = 4860
= REPLACE (post_content,'old content','new content');
没有太多运气。我做错了什么?
答案 0 :(得分:1)
UPDATE wp_posts SET post_content = REPLACE(post_content,'old content','new content')WHERE post_parent = 4860;
答案 1 :(得分:1)
这是我用于在标准WordPress安装中更新域的常见sql脚本。我认为这是你正在努力做的事情吗?
- 更新常用表格:
UPDATE wp_usermeta SET meta_value = replace(meta_value, 'foo.local.com', 'foo.com');
- 要使用新博客位置更新WordPress选项,请使用以下SQL命令:
UPDATE wp_options SET option_value = replace(option_value, 'http://foo.local.com', 'http://foo.com') WHERE option_name = 'home' OR option_name = 'siteurl';
- 之后你将需要修复WordPress帖子和页面的URL,这些帖子和页面从post slug翻译,并作为guid字段存储在数据库wp_posts表中。此字段中的URL值存储为绝对URL而不是相对URL,因此需要使用以下SQL查询进行更改:
UPDATE wp_posts SET guid = replace(guid, 'http://foo.local.com','http://foo.com');
- 如果您在博客帖子或具有绝对网址的网页内部链接,则移动博客位置后这些链接将指向错误的位置。使用以下SQL命令修复所有WordPress帖子和页面中所有内部链接到自己的博客:
UPDATE wp_posts SET post_content = replace(post_content, 'http://foo.local.com', 'http://foo.com');
- 如果您使用绝对网址定义了自定义菜单网址,则在移动博客位置后,这些链接将指向错误的位置。使用以下SQL命令修复所有WordPress帖子和页面中所有内部菜单链接到自己的博客:
UPDATE wp_postmeta SET meta_value = replace(meta_value, 'http://foo.local.com', 'http://foo.com');
请记住,如果您在WP多站点安装上尝试此操作,则会有其他表进行转换。希望有所帮助!