One-way DB Migration Workflow

时间:2018-02-25 作者:Brent Arias

我很喜欢下面所示的WordPress工作流程。然而,由于我是WordPress的新手,我想知道它有多现实。

数据库下移,代码上移

WordPress Workflow

这一想法在WPEngine support article for WordPress 在另一篇名为;No More Cowboy Coding."E;我们的想法是;WP迁移数据库“;用于将生产数据库拉入开发环境中,但事实并非如此。

问题

我担心我在开发环境中添加的插件可能会改变DB结构。的确WPEngine has another article 声明:

有时,您对开发实例所做的更改涉及代码和数据库更改。在这些特定的情况下,您仍然可以“向上”部署代码更改但是,您还需要下载export of the specific tables您希望使用phpMyAdmin导入到生产环境。最常见的情况是,您需要专门导出wp\\u options表,以及特定于您在开发中所做更改的任何其他表。Did you add a plugin that added database tables?

我想了解第三方安装/激活的插件进行(结构性)DB更改的频率?如果50%的插件都有这种行为,那么这个工作流几乎是无用的。如果只有1%的插件有这种行为,那么我就不担心了。

有人有这种感觉吗?

我再次尝试评估此工作流的真实性。我还想知道其他人是如何应对(罕见?)插件确实修改数据库的情况。

为了澄清这一点,我不希望自己开发任何插件或主题。我预计只会在本地开发环境中集成第三方插件和主题,然后将其推到登台或直接推到生产环境中。

1 个回复
最合适的回答,由SO网友:Mark Kaplun 整理而成

我想了解第三方安装/激活的插件进行(结构性)DB更改的频率?

无bug修复版本的所有时间。无论插件做什么,很少有不需要某些设置的功能。

解决这个问题的一个方法是尽量减少插件的使用。另一种方法是“拦截”插件的请求,从DB获取配置,并在代码中覆盖它。例如,如果插件将相关值存储在选项中,IIRC您可以使用pre_option_{option_name} 滤器

您可能需要添加一些插件版本检查,以在生产和开发中返回不同版本的数据。

澄清一下,我不希望我会开发任何自己的插件或主题

嗯,打电话给第三方并不是不能完全控制它的行为的借口,因为最终你需要解决网站上发生的任何bug。只使用提供足够钩子的插件,这样您就不必使用它们来运行数据库同步问题。

结束

相关推荐

Publication Workflow

我正在考虑担任以下两个角色:一篇文章可以处于以下不同的状态:草稿已准备好发布,我正在寻求的工作流程是:李安editor 写一篇博客文章。这是一个draft.</一旦定稿,编辑将ist标记为ready for publication. 从那一刻起,编辑looses the ability to edit the blogpost.publisher 审查、编辑和publishes the blogpost.这是否可以通过Wordpress实现如果没有,是否有用于此类工作流的最新插件<这似乎是一个