WordPress を CMS として使用して多くのカスタマイズを行おうとしていますが、私の質問は、開発を本番環境に同期するにはどうすればよいですか?
WordPress を使用しないと仮定すると、一般的な開発サイクルは、ページをローカルで開発し、DB スクリプトを作成することです。その後、すべての準備が整うと、サイトに投稿されます。そして再び、さらに多くのデータベースとコードの変更が行われ、変更のみが更新/適用されます。
現在、WordPress を使用すると、すべての優れた機能を利用できます (一例として、ブログ、コメント、ほぼ準備が整った CMS などなど)。しかし、展開は面倒です!理想的には、上記の典型的な開発サイクルを維持したいと考えています。したがって、WordPress をローカルで (wordpress.org から) 実装し、変更を実稼働サーバーにプッシュします。
したがって、WordPress でローカルに新しいページを作成すると仮定すると (サーバー上にページを作成することは決してなく、すべてローカルに作成します。サーバーの wp-admin を無効にする方法を見つけます)、多数のファイルが作成されます。これは今のところ問題ありません。ただし、新しく作成したページにコンテンツを追加したい場合、そのコンテンツはローカル データベースに保存されます。そのコンテンツはデータベースの変更ですが、(私の観点からは) ライブ サーバー経由でそのコンテンツを追加するのではなく、サーバーにプッシュする必要がある新しい変更と見なされます (そのコンテンツは静的と見なされ、ブログではないため)投稿またはコメント、それは静的ページです)。
これで、その新しいページ コンテンツが DB に保存されるため、ローカル マシンで DB に変更が加えられ、FTP でサーバーに送信するファイルと共にサーバーにプッシュする必要があります。
私の質問は次のとおりです。
このアプローチは正しいですか?そうでない場合、あなたは何を提案しますか
データベースの差分を見つける最良の方法は何ですか? 使用するツールは何ですか?MySQL Workbench はそのようなものを提供しますか? そのツールを使用して差分を見つけ、DB の更新スクリプトを生成するつもりです。この質問の理由は、私は通常自分で変更を行い、それらを追跡する方法を知っていますが、現在、これらの DB の変更は WordPress によって生成されており、どの変更が行われたかを調べるためにそれらをリバース エンジニアリングする必要があります。
ステップ 2 が機能すると仮定すると、そのスクリプトに変更が必要なものはありますか? サーバー名など?たとえば、WordPress はサーバー名をハードコーディングしますか?
私の開発環境について要約してより多くの情報を提供するために、私は Windows 7 での開発に XAMPP を使用し、PHP と MySQL をセットアップします。また、ソース管理には Mercurial を使用しています。前述のように、ソリューションの一部として WordPress を使用し、CMS ソリューションの作成に役立てたいと考えています。ページの生成にはローカルで使用し、オンラインではその機能を無効にします (ブログの投稿や同様のエントリに対してのみオンラインを維持します)。物事を同期させるためにそうしています。ローカルでページを作成すると、一部のデータが DB に保存されます。さて、どのように同期/アップロードしますか?
ありがとう。