我定期进行相同的dev-prod部署,因此我为其开发了一些标准查询:
更新网站url:
更新wp\\u options SET option\\u value=replace(option\\u value,“[DEV\\u URL]”,“[PROD\\u URL]”),其中option\\u name=“home”或option\\u name=“siteurl”或option\\u name=“fileupload\\u URL”;
更新上载路径:
更新wp\\u options SET option\\u value=“[站点\\u根路径]/wp content/uploads”,其中option\\u name=”upload\\u PATH“;
更新post GUI:
更新wp\\u posts SET guid=replace(guid,“[开发URL]”,“[生产URL]”);
更新帖子中的URL:
更新wp\\u posts SET post\\u content=replace(post\\u content,“[开发URL]”,“[生产URL]”);
用实际值替换括号内的变量,例如。
[开发URL]->http://example-local-pc.com[产品URL]>http://example-online-server.com[站点\\u根路径]->/主页/客户端/域/示例联机服务器。com/html
这通常会处理对dev环境的任何引用。但是,您应该注意:
i) 许多插件还将绝对URL存储在wp\\U选项或自定义表中。这些你必须逐案调查。
ii)运行更新替换查询(如上面的1和2)几乎肯定会损坏序列化字段中的数据。除了让相关插件自己进行更新之外,我还没有找到一种干净、快速的方法来进行这种替换。这一点的成功取决于插件的健壮性。