上下文
我被指派更新第三方Wordpress主题,第一项任务是将生产网站迁移到我的开发环境。
迁移
UPDATE wp_options SET option_value = replace(option_value, 'http://production.com', 'http://dev.site') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = replace(post_content, 'http://production.com', 'http://dev.site');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://production.com','http://dev.site');
问题
在我的开发环境中访问网站时,我注意到许多生产短代码已被破坏。
有什么想法吗?
答案 0 :(得分:1)
大多数迁移中断都是由错误的序列化数据引起的。
修复这些中断的最简单方法是强制重新创建数据。这可以通过强制插件将序列化数据重写到MySQL数据库来实现。
遵循这些步骤有助于解决您可能遇到的大多数迁移错误:
对于其他读这个答案的人: 重要的是要注意,如果您的网址发生了更改并且您没有运行问题中提到的SQL修补程序,那么几乎所有这些都是不可能的
如果需要,我已在下方添加了我自己的版本,您只需记住将oldsite-url.com
和newsite-url.com
替换为相关值。
如果相关数据库使用自定义表格前缀(即不是wp_
),则需要记住查找 - > 也替换。
这是SQL查询:
UPDATE wp_options SET option_value = replace(option_value, 'http://oldsite-url.com', 'http://newsite-url.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE (guid, 'http://oldsite-url.com', 'http://newsite-url.com');
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://oldsite-url.com', 'http://newsite-url.com');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://oldsite-url.com','http://newsite-url.com');