在不更新站点的情况下将 wordpress 迁移到不同的环境 url

Migrating wordpress to different environments without updating the site url

我们想将 Wordpress 引入我们的云环境。我们有 3 层开发服务器和生产层。我们的环境如下: 开发 dev.mysite.com, 测试 test.mysite.com, 阶段 stage.mysite.com , 产品 mysite.com

我们需要一种干净的方法来在每个环境中迁移站点,而无需使用更新查询或脚本,例如 https://interconnectit.com/products/search-and-replace-for-wordpress-databases/。特别是在生产迁移阶段,代码被签署和冻结。 运行 代码冻结后的此类查询违反公司政策。

有没有办法将站点 URL 设置为 mysite.com 并根据服务器环境动态预置适当的子域?

您可以按照评论中提到的 Whosebug 答案中的描述为站点 URLs 添加子域,但是 WordPress 有很多 URLs 存储在数据库中,这些不会除了数据库更新或大量 WordPress 过滤器之外的任何东西都可以改变。

例如,如果用户使用标准的 WordPress“添加媒体”按钮将图像插入 post 或页面,则生成的图像 URL 是绝对图像。您需要确保用户 总是 将那些 URL 更改为相关链接的某种方式,否则图像将在迁移后损坏。