WordPress 数据库中的 wp-posts 表中有一个 guid 键值,它记录了文章的最原始 URL 信息,所以当我们合并两个以上的 wordpress 数据或更换域名的时候就会出现 ID 重复或者不对。为了能够让 guid 中记录的链接与站内文章的真实链接相对应,我们需要批量更新 guid 的值。直接进数据库修改就可以了。

批量修改 **wp_posts **中 guid 中域名信息

UPDATE `wp_posts` SET `guid` = replace(guid, "原域名", "新域名");

这样,经过几次的查询处理,可以将从多个站点导过来的文章的域名进行统一。

批量重新生成 guid 信息

UPDATE `wp_posts` SET `guid` = CONCAT('域名/前缀',ID) where post_type='类型'

“域名/前缀”这个地方有以下两种形式:

“http://www.abc.com/?p=” 供 Post 使用。
“http://www.abc.com/?page_id=” 供 Page 使用。

而且语句后面的“类型”也分别为 post 和 page

这样做,是为了能够让 guid 中记录的链接与站内文章的真实链接相对应。而且,以上操作也适用于那些使用后台导出导入功能进行搬家的朋友们。


Never give up your dreams.