開発者が更新をライブサーバーにリリースする前にステージングサイトを通じてテストする必要があることは広く受け入れられていますが、開発更新でWordpress DBの変更が必要になると、ライブサイトのユーザーもDBを更新するため、状況が複雑になります。
私が想像できる唯一の(混乱した)フローは次のとおりです。
- ローカルサーバー(WAMP、XAMPなど)でテストする
- 展開の準備ができたら、ライブサイトをメンテナンスモードにします。
- ライブサイトのバックアップ(Duplicator、sqldumpなど)
- ロックされたライブサイトのクローンをステージングサイトに作成する
- ローカル環境からステージングサイトに変更をアップロードする
- ステージングサイトをテストする
- ステージングサイトを公開します。
- メンテナンスモードを削除する
上記のフローの欠点:
- 開発者がステージングサイトで更新を慎重にテストしている間、ダウンタイムはユーザーにとって予想よりも長くなる可能性があります。
- 変更の手動管理が必要な場合があります。たとえば、siteorigin pagebuilderレイアウトはデータベースに保存されるため、レイアウトを変更したら、ステージングサイトに手動でインポートする必要があります。この場合、ステージングサイトにページをドロップしてインポートするだけで十分です。機能している場合は、ライブサイトにインポートします。
これを達成するためのより良い、より自動化された方法はあるのでしょうか。
どう思いますか?
編集、要求に応じて、過去にいくつかの解決策が提案されましたが、決定的な解決策を提供するものはありません:
- 2010年9月-開発/ステージングと本番の間のデータベース同期
- 2011年12月-wp_options テーブルを変更する更新済みまたは新しいプラグインのデプロイ
- 2014年9月- ローカルの変更を新しい投稿/ページを上書きせずにライブサーバーにアップロードする方法
- 2015年1月-WordPress サイトのブログをプロダクションおよびステージングで維持する方法