質問: wordpressマルチブログのデータベース設定を上書きする 私たちのチームは、ワードプレス3マルチブログで作業する問題に出くわしました。通常、サイトのローカルコピー(localhost/testsite)を使用しますが、同じデータベースを使用してすべての変更を最新の状態に保ちます。phpからデータベース設定を上書きすることができるので、これは単一インストールではうまく機能します。define('url',$path); define('wp_home',$path); define('wp_siteurl',$path); define( 'wp_content_url', $path.'/wp-content'); しかし、追加のテーブル(wp_blogs、wp_site)があるため、これはマルチサイトでは機能せず、設定にブログへのパスがあります。誰もがこれらの設定を上書きする方法を知っていますか?私達の開発者のために私は私達の開発者のためのドメインlocalhostで走らせたいと思います、developerdomain.com私たちのテストサーバーのために、そしてrealdomain.comになります。データベースごとに異なるデータベースを設定し、ドメインとパスを手動で変更してからデータベース間で投稿、ブログ、ユーザーデータをコピーしてデバッグを行い、開発を続ける必要があるとしたら、やり過ぎです。
回答: これを正しく実行したいのであれば、開発用に1つ、ステージング用に1つ、次にライブデータベース用に1つのデータベースがあります。それはwordpressがソフトウェア工学のそのようなコモンズと共に生きるように設計されていないということだけです。まだ一般的に欠けていると思われるコンポーネントは、ドメイン名が投稿に「ハードコード」され、複数の(多くの場合シリアル化された)オプション値に埋め込まれるため、データベース内のすべてのワードプレス設定とデータをドメイン間で変換できる完全な移行スクリプトです。 。リストに載っているいくつかのオプションについてだけ心配している限り、pre_option_...フィルタにフックしてあなたの設定に基づいてそれらを変更することができます。あなたはあなたの設定ファイルに定義を書き、それに応じて値を変更することができます。これは、データベースから実際の値をフィルタリングしているのと同様に、マルチサイト設定でも機能する可能性があります。これは方向ですか?