将Wordpress复制到暂存丢失wp_options

时间:2014-07-21 23:20:11

标签: php mysql wordpress backup staging

我正在将wordpress从我的作品复制到我的临时站点。

我是这样做的:

  1. 复制所有文件
  2. 制作mysql转储
  3. 导入mysql dump
  4. 使用以下内容更新数据库中的网址
  5. 说明:

    UPDATE wp_options SET option_value = REPLACE(option_value, 'http://www.domain.de', 'http://staging.domain.de');
    
    UPDATE wp_postmeta SET meta_value = REPLACE(meta_value, 'http://www.domain.de', 'http://staging.domain.de');
    
    UPDATE wp_posts SET guid = REPLACE(guid, 'http://www.dailycat.de', 'http://staging.domain.de');
    
    UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://www.domain.de', 'http://staging.domain.de');
    
      

    执行此操作,例如,某些设置主题,小部件和mailchimp都丢失了。它们仍然在数据库中,但它们没有出现在屏幕上。知道如何解决这个问题吗?

    谢谢,非常感谢您的帮助!

1 个答案:

答案 0 :(得分:1)

您需要使用正确反序列化/重新序列化数据库中数据的脚本,例如主题选项,窗口小部件内容等的序列化数据。在数据库中运行的那些UPDATE命令不会这样做;他们做了一个简单的查找/替换,打破了序列化数据。

使用interconnectit.com WordPress Serialized PHP Search Replace Tool

请记住,某些主题首先没有正确地序列化数据,因此根据您的主题,脚本可能无法完全正常工作,并且您可能还需要重置一些主题选项,小部件等。< / p>

另见Moving WordPress « WordPress Codex