迁移非常棘手,因为它们可能非常简单,也可能让人头疼。(如果您想要快速的解决方案,请跳过解释,转到Fast solution).
最简单的部分是,在迁移网站时,需要使用MySQL并访问PHPMyAdmin。
登录到PHPMyAdmin后,需要使用旧数据库查找新数据库。com URL并单击“SQL”选项卡。
您将在此处粘贴此SQL:
UPDATE wp_options
SET option_value = replace(option_value, \'http://old.com\', \'http://new.com\')
WHERE option_name = \'home\'
OR option_name = \'siteurl\';
UPDATE wp_posts
SET guid = replace(guid, \'http://old.com\',\'http://new.com\');
UPDATE wp_posts
SET post_content = replace(post_content, \'http://old.com\', \'http://new.com\');
UPDATE wp_postmeta
SET meta_value = replace(meta_value,\'http://old.com\',\'http://new.com\');
Heads up! 记住
change every old.com with yourOldUrl.domain 和
every new.com with yourNewUrl.domain.
Ex. old = testing.com | new = production.com
要快速浏览这段代码,您必须知道有三个表,我们在正常/简单的迁移中存储了URL:wp_options
,wp_posts
,wp_postmeta
; 这段代码只是将一个字符串替换为另一个字符串。
可能出现什么问题
如果您有一个自定义主题或插件,可以在不同的表中存储数据(通常是
wp_options
) 如果它们存储序列化数据(确实如此!),这将是一个真正的麻烦,因为序列化数据是存储为字符串的数组,如果更改任何文本的长度(
old.url = 7个字符
vs mynew.url = 9个字符)
It will cause an error and won\'t recognise the string as a serialized string anymore.
Read more about serialize data here.
快速解决方案
我总是将每个项目从其测试环境迁移到生产服务器,以便
I made this library to make my life easier.
它将帮助您只需单击一下就可以将URL从一台服务器迁移到另一台服务器。
希望这有帮助。